Age | Commit message (Collapse) | Author |
|
Change-Id: I7855c76e820efce96778b1c19ec71dffcc4b4abb
Reviewed-on: https://gerrit.libreoffice.org/43621
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I52f062bf0b4c1af44576546d0593699758d71084
Reviewed-on: https://gerrit.libreoffice.org/42232
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I15498d3d2b80b20cfae35ce6b304fd83ce8f5083
Reviewed-on: https://gerrit.libreoffice.org/41641
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Takeshi Abe <tabe@fixedpoint.jp>
|
|
apparently there was never a user for this item since initial commit
in the year 2000. SvxScriptSetItem gets the ScriptType by parameter
see GetItemOfScript and PutItemForScriptType.
remove SID_ATTR_CHAR_SCRIPTTYPE and don't put the item in any set.
keep the gap in the ID range because it's not part of any range
and there are already other gaps.
Change-Id: Iee24f13b329593af2dc5548d8b6bc2282c2dc5b3
Reviewed-on: https://gerrit.libreoffice.org/41423
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I899a8126c9d971601fea6c77eca165718aea0ac5
Reviewed-on: https://gerrit.libreoffice.org/41237
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
tinderbox Jenkins_Linux_Ubsan fails with:
> /home/tdf/lode/jenkins/workspace/lo_ubsan/svx/source/svdraw
> /svdedxv.cxx:462:48:
> error: default initialization of an object of const type
> ´const std::vector<basegfx::B2DRange>´
> without a user-provided default constructor
> const std::vector< basegfx::B2DRange > aEmptySelection;
> ^
> {}
we have to use value initialization instead of default initialization
Change-Id: I1e5e1266ac76e27afcbe57bc1414fd6ac774c9be
Reviewed-on: https://gerrit.libreoffice.org/41071
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
|
|
Change-Id: Ia36c8abe91e8c2ac46498e88def59a9887711ba1
Reviewed-on: https://gerrit.libreoffice.org/41014
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
|
|
EditView on Overlay visualization needs to handle
selection change when e.g. FontSize attribute of
a selected text portion changes. Changed handling
so that selection overlay is an integral part of
text visualization overlay and refreshing text
visualization always refreshes selection visuals,
but not the other way around. Both anyways check
for real change, so just extra testing is avoided
which is still the better solution
Change-Id: I3ce6570fd9a18a7c1d7ced4bc4ca9aeda57538e0
Reviewed-on: https://gerrit.libreoffice.org/40993
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
Do not hand over LogicalSelectionRanges directly on
selection change, better let the visulizer do what
he needs. On AttributeChange, tge resulting repaint
needs to refresh all OverlayObjects, not only text,
but also the selection to make look okay e.g. at
font size change
Change-Id: Ibb9737c33d6f85a9f68df3edbb989c0443cd4a5c
|
|
Added support for vertical text, checked all
combinations for text positioning, secured cursor
stuff, ensured collaboration with LibreOfficeKit
Change-Id: I98d1187700907c0c72abdccb9c9979496f6c20cf
|
|
The Selection visualization in EditVierw is organized
to use XOR for visualization, thus DrawSelection is
used e.g. before and after changes to the Selection.
Ensured athat all changers of selection have to use
SetEditSelection by making return of GetEditSelection
const. This allows to use a central and safe
SelectionChanged which is needed for alternatives of
Selection visualization.
Change-Id: I994553f3be6b58fd595aa500922d8d1d8ddd36d4
|
|
This is the first basic functionality to get the active
EditView with EditEngine work in the Overlay which all
Apps support. Reason is that the current EditEngine 'plugs'
into the Window and uses Invalidate() calls to repaint
deeply everything under a text change. While this is
acceptable for simple cases it can get very slow when
there are excessive, expensive to paint objects in the
background, e.g. MasterPages in Draw/Impress with gradients
and other stuff. This was avoided in older versions (LO51)
by 'guessing' a good BackgrundColor by the EditEngine,
not invalidating but painting actively using that guess
(with better or worse results) which someone removed.
For the future it is anyways the better way to get the
EditEngine functionality to Overlay and using Primitives,
this will be a first step. This may enable Text Editing
without repainting the Background (fast), using a non-XOR
selection paint and more. It will need thorough testing
and further experimenting due to EditEngine being used in
many places (DrawObjects, Calc Cells, Formular Fields,
Controls, ...)
Change-Id: Ib9eb0f3999fd61a82ddf7a60ab1ea6ccda3a60da
|
|
Change-Id: Idbe6849d36727c382ffd11d6bf04e78d6a66a878
Reviewed-on: https://gerrit.libreoffice.org/40740
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and fix a bug in the plugin itself when calling operator's like the one
on std::function<>
Change-Id: I1617607107eeff06785c1841f69e13ad2926218e
Reviewed-on: https://gerrit.libreoffice.org/40446
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
* all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl
* all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string")
* ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching
MODULE .mo files
* UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui
goes from l10n target to normal one, so the res/lang.zips of UI files go away
* translation via Translation::get(hrc-define-key, imbued-std::locale)
* python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there
to keep finding the .hrc file uniform) so magic numbers can go away there
* java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation
mechanism
* en-US res files go away, their strings are now the .hrc keys in the source code
* remaining .res files are replaced by .mo files
* in .res/.ui-lang-zip files, the old scheme missing translations of strings
results in inserting the english original so something can be found, now the
standard fallback of using the english original from the source key is used, so
partial translations shrink dramatically in size
* extract .hrc strings with hrcex which backs onto
xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap
* extract .ui strings with uiex which backs onto
xgettext --add-comments --no-wrap
* qtz for gettext translations is generated at runtime as ascii-ified crc32 of
content + "|" + msgid
* [API CHANGE] remove deprecated binary .res resouce loader related uno apis
com::sun::star::resource::OfficeResourceLoader
com::sun::star::resource::XResourceBundleLoader
com::sun::star::resource::XResourceBundle
when translating strings via uno apis
com.sun.star.resource.StringResourceWithLocation
can continue to be used
Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
|
|
In tiledrendering mode cursor inside shapes are not handled very well now.
Different LO instances manipulates the same cursor instead of having
one separate cursor for all instances (as in case of simple text editing
in Writer).
Crashes caused by that one cursor is owned (created and destroyed) by one
LO instance but used by an other instance in the meantime. We can avoid
this by not making this cursor available to the other instances. Cursor is
hidden anyway so don't need to have it set to the corresponding Window.
Change-Id: Id78f79e73eda88f3c2c6aa7f534c32f3f8aba174
Reviewed-on: https://gerrit.libreoffice.org/39432
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
|
|
Change-Id: Ie9fd55b71a152f428a397d9917918f0e9de39aaf
Reviewed-on: https://gerrit.libreoffice.org/39014
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I6621e0dda5a5dc3e68c7b1613975c075e2879912
Reviewed-on: https://gerrit.libreoffice.org/39006
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This reverts commit 44555103217df34b218787f3dc6a2634b41fe52e.
Now revert the related commit, need to revisit the original bug later.
Change-Id: I08f42c4e859277ab411e4be5ad065fe3cca8bbb6
Reviewed-on: https://gerrit.libreoffice.org/38923
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Tested-by: Tamás Zolnai <tamas.zolnai@collabora.com>
|
|
In the related change:
d36aa2ba3132ce62a370b7260ca620642cbf7dbf
wrong method was used to set cell properties, which does
not handle undo actions, so use the proper function.
Other issue was related to undo handling of vertical text
alignment in general. In some cases undo actions were lost
after user clicked out of the cell. It is because vertical
alignment is not affecting the outliner and so the related
undo actions were just dropped in EndTextEdit() method.
Change-Id: I3a6a95fac711056a658a3dee616733939cd13330
Reviewed-on: https://gerrit.libreoffice.org/38699
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
|
|
which in turn triggered some loplugin:useuniqueptr
Change-Id: I0c38561fc9b68dac44e8cf58c8aa1f582196cc64
Reviewed-on: https://gerrit.libreoffice.org/38281
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I4b9b749565750acc7f674957fd619870b0e29237
Reviewed-on: https://gerrit.libreoffice.org/37240
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
change values to match position in definition to their meaning
Change-Id: Ia96e0c7e0c70c847dea518ef871608516542d3cb
Reviewed-on: https://gerrit.libreoffice.org/37186
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
... to prevent disasters with managing the UndoManager, so assert that.
Change-Id: Id577ea465e21e3d358b3ff0bb36de0af34e0b69d
|
|
In all of sc, sd, sw, the UndoManager returned by
getSdrUndoManagerForEnhancedTextEdit() is owned by the application
and SdrObjEditView should leave its grubby paws off of it.
Change-Id: I7be3d336e0aaf4905323c1e99ff0643b3844f295
|
|
Deleting outliner view removes the pointed Cursor (pTECursorMerker).
Change-Id: Iac17386d1d02bf52bd5322073e49da05c6e89d9b
Reviewed-on: https://gerrit.libreoffice.org/37085
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Tested-by: Tamás Zolnai <tamas.zolnai@collabora.com>
|
|
Change-Id: I1996319e5b664dff95f7a9b2346aea6092d333ec
Reviewed-on: https://gerrit.libreoffice.org/36070
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Mostly generated using
make check COMPILER_EXTERNAL_TOOL=1 CCACHE_PREFIX=clang-rename-wrapper RENAME_ARGS="-qualified-name=Rectangle -new-name=tools::Rectangle"
Except some modules have their own foo::tools namespace, so there have
to use ::tools::Rectangle. This commit just moves the class from the
global namespace, it does not update pre/postwin.h yet.
Change-Id: I42b2de3c6f769fcf28cfe086f98eb31e42a305f2
Reviewed-on: https://gerrit.libreoffice.org/35923
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Change-Id: I953c81cf477fddf0f136b3b03a6682c962850deb
Reviewed-on: https://gerrit.libreoffice.org/34471
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I0a236705efdcbc5f44cad8517f7f8f80d326934d
Reviewed-on: https://gerrit.libreoffice.org/34209
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and
coverity#1398580 Dereference after null check
Change-Id: Ib02a05d97c2ee2824eb1e8ad7fa97022fd573879
|
|
Change-Id: I9f64eac95b39adc649b2e63cd5abdd6e7a448ee6
|
|
Change-Id: I56cce69ddb21f7f9336b8f59e181e91306e92019
Reviewed-on: https://gerrit.libreoffice.org/31623
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Change-Id: I2a669aff0a8a63eb4b16600344cea9f601d5e68a
Reviewed-on: https://gerrit.libreoffice.org/31601
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I98201eac2e038c152422bbc6380cfa321ba266df
Reviewed-on: https://gerrit.libreoffice.org/31534
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I8c1797e78f644bd15eb6d26a96fcc3ed909c2aab
|
|
SW_DRAWLAYER had the same value as SC_DRAWLAYER, so I merged it into the
ScOrSwDraw enum constant
Change-Id: I5c45d378c00364d11cc960c9e48a6e3f10928724
Reviewed-on: https://gerrit.libreoffice.org/31037
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
I left a prefix on the names "Map" so that I would not have to re-arrange
each name too much, since I can't start identifiers with digits like "100thMM"
And remove RSC_EXTRAMAPUNIT, which doesn't seem to be doing anything anymore.
Change-Id: I5187824aa87e30caf5357b51b5384b5ab919d224
Reviewed-on: https://gerrit.libreoffice.org/29096
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...which was introduced with 3ead3ad52f9bb2f9d1d6cf8dfc73a0a25e6778ed "Gradually
typed Link" to distinguish the new, typed versions from the old, untyped ones,
but is no longer necessary since 382eb1a23c390154619c385414bdbe6f6e461173
"remove untyped Link<>" removed the old versions.
Change-Id: I494025df486a16a45861fcd8192dfe0275b1103c
|
|
These additional views are only created to follow the updates done in
the editing view, not to contribute additional cursors.
With this, if the first view edits a shape text and the second view is
created, then no unwanted text view cursor is created in the first view
for the shape text from the second view.
Be precise in the unit test and make sure that cursors from all views
are hidden, because even without a fix the cursor of view #2 is hidden,
but not from view #3, so the test wouldn't fail without the fix. (But
hardcoding the 0-1 and 2-3 view IDs exposed by Impress before/after
initializeForRendering() would be ugly.)
Change-Id: Idf64f7bfcc35c98a5eada9a0a523a9b45b65a211
|
|
... from SdrObjEditView. This way SdrMarkView can avoid
SfxViewShell::Current() calls, and it can avoid clearing the LOK graphic
selection of the old view when constructing a new view.
With this, an existing graphic selection in an Impress LOK view is no
longer cleared when creating a new view, thanks to the
sd::View::GetSfxViewShell() override.
Change-Id: I70a287aa9c2265bf59a9fb18e0c3839b8f119bbc
Reviewed-on: https://gerrit.libreoffice.org/28618
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Change-Id: Ic331db66ad937eba6488e6a9bbb30131230a29d7
|
|
Change-Id: I77ad33425d440263a71bc94f41d8e141f16dfb78
|
|
Extend the existing OutlinerViewCallable interface to be able to obtain
the view shell ID of a view shell, even from editeng.
Change-Id: I13708b0e4f58ee86643b913c7d21de022a685223
Reviewed-on: https://gerrit.libreoffice.org/27788
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
This is a follow-up to commit 9d91d371e92548c7f75a7d0155eecaf3769fdee6
(svx lok: draw text edits in all views, 2016-07-26). Two corner-cases
are now handled:
1) When the SfxViewShell is created after begin text edit and
2) When the other draw view is already created, but at the time begin
text edit happens, the other draw view shows a different page.
And the opposite of these: switching away from a page were we observe a
text edit done in an other view or destroying a view that observes a
text edit.
When the complete view goes away, then SdrObjEditView::HideSdrPage() is
not called, so also try to destroy the outliner view of the text edit
from SdrObjEditView::DeleteWindowFromPaintView(). The GetSfxViewShell()
call in SdrObjEditView::ShowSdrPage() is important, because we let the
other draw view create the outliner view, but the outliner view should
invoke our view shell, not the view shell of the other draw view.
Also improve the SdTiledRenderingTest::testCursorViews() testcase, so
that it asserts it managed to begin text edit and use a test document
that still has a single slide and shape, but the shape is not
auto-sized; otherwise invalidations happen even if outliner views are
not created in all draw views, so the test would pass even without the
fixes.
Change-Id: I2c3bb27826c6887115366db818599fc8adabc5a5
Reviewed-on: https://gerrit.libreoffice.org/27583
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Currently when a text edit is started, then in the LOK case if there is
an other view that shows the same page, then both draw views will have
an outliner view showing the text edit. This means that in case a view
shell is created after starting the text edit, that won't have an
outliner view for the text edit.
Before fixing this, calls to SfxViewShell::Current() has to be avoided
when we're in the process of setting up a new LOK view. In case of
Impress, this is a double initialization, and by the time
SdrObjEditView::ImpMakeOutlinerView() is called, we're already in the
process of setting up the second SfxViewShell (as part of
SdXImpressDocument::initializeForTiledRendering()), but
SfxViewShell::Current() still points to the old view shell. Which means
that the outliner view would refer to a view shell that's deleted soon,
and we crash as soon as it tries to invoke a LOK callback.
Fix this by adding a virtual member function to SdrObjEditView, and
override it in sd, so in case applications want to provide a more
precise way of giving the view shell owning a draw view, then they can.
Change-Id: Ie0005f73237d4ff9cf576bf16fa5b46280f13759
Reviewed-on: https://gerrit.libreoffice.org/27561
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Use case: a document has a shape with text, and two views. If one view
starts to edit the shape text, the model text is hidden (via
TextHierarchyEditPrimitive2D), and the in-progress text was painted
directly only in the view that edits it. The remaining views presented
the shape as if it had no text. This commit addresses the subset of this
use case when the views are already created and they already show the
same draw page.
Fix the problem by looking for other views showing the same draw page,
create a view of the text edit for them, and paint them in all views
after the own text edit is painted.
There is not much LOK-specific in this code, except that some extra code
would be needed to not paint the blinking cursor of the text edit in
other views, and then it could be enabled in the non-LOK case as well.
Change-Id: Ib3096a3369fa56663ee209794e102090d362de66
Reviewed-on: https://gerrit.libreoffice.org/27535
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
since...
commit ba81e5c6bd420b41a84ade6ccd774011a8089f7f
Date: Thu May 28 21:35:43 2015 +0100
tdf#91702 - fix stack-based MessBox allocation.
There is no special ScopedVclPtr<X>::Create or
ScopedVclPtrInstance<X>::Create just
VclPtr<X>::Create and a raw VclPtr<X>::Create()->foo
doesn't call dispose on the owned X
Change-Id: Ifacc8d5e742820701307c3c37b9b86487667d84f
|
|
The problem was the the blinking cursor was hidden when another vcl
window got its focus, so it wasn't possible to edit two shape text in
parallel in two windows.
The code path is like this:
- show cursor, cursor is created: SdrObjEditView::SdrBeginTextEdit() ->
OutlinerView::ShowCursor()
- show cursor, focus case: sd::FuText::Activate() ->
OutlinerView::ShowCursor()
- hide cursor, cursor is deleted: SdrObjEditView::SdrEndTextEdit() ->
OutlinerView::HideCursor()
- hide cursor, focus case: sd::FuText::Deactivate() ->
OutlinerView::HideCursor()
So add a new optional bool parameter that allows not emitting the
LOK_CALLBACK_CURSOR_VISIBLE callback in the focus change case.
Also, if we're at it, make sure that painting emits no show/cursor LOK
callbacks.
Change-Id: I1068a1b1f5cd76fd09b5a79066834bfb0daebc77
Reviewed-on: https://gerrit.libreoffice.org/27335
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Change-Id: I6b7a33b5f1297309a7225cac8150dbf1175506b6
Reviewed-on: https://gerrit.libreoffice.org/26642
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|