Age | Commit message (Collapse) | Author |
|
Since the introduction of the scheduler stack, this became merely
a debugging and assertion hint. So actually handle it like that
and don't use it for any decisions, even in debug code.
Change-Id: Ibeb247279d9e94ea4ff3a7b4652e98e179d6c76e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107824
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
which doesn't do any mirroring on any of its drawing calls.
Change-Id: I4f531ee01147b34f36a6d4235f3340bd1a8e62ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107769
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I57533f033f9528b7c89162967b392eb5abb4d76a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107750
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
When conserving memory in raster mode, SkiaSalBitmap may decide
to drop the pixel buffer if SkImage is created from it, since
having both wastes memory and converting between them is cheap.
But if there is still a Bitmap::ScopedReadAccess existing
for the bitmap (e.g. VclCanvasBitmap keeps it as a member),
then dropping the pixel buffer would make the data pointed to
by the read access invalid.
Technically this patch should distinguish between info and read
accesses, as info accesses do not point to pixels, but this is
simpler and hopefully doesn't make a difference in practice.
Change-Id: I307170ad4651b849feda0cf224976ca5a87e5207
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107752
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
This reworks the Graphic swap algorithm to not swap to a file when
GfxLink is available and leaves the compressed data in memory.
With such a sheme, at swap-out we just remember the need specific
properties of the Graphic, and delete the graphic content (Bitmap,
Animation, VectorGraphic, Metafile). At swap-in use the GfxLink
data to decompress and recreate the graphic content, then set
the properties back as they were before (if needed).
If a GfxLink is not available it swaps out to a file and back, but
uses a simpler data format that is specific for swapping only. In
the future this case can be removed, when we switch to automatic
creation of GfxLink if that one is not present.
For reworking of swapping it was also necessary to extensively add
and extend the tests that check various swapping scenarios.
Change-Id: I135a224f74aa48e6006f48dd2be74b8026614728
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107287
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: I1f0b8938f2174f9b8eee01714ea176fa4df38504
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107715
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: I49996ad433409a9189c0f7adc997858e1512f40c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107687
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I442d99e8f6a7df11dc950c5073f683bffc41a852
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107661
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ie083afe2763b21e0abada228e4007b9b387c2d39
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107660
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...for LIBO_INTERNAL_ONLY. These had been missed by
1b43cceaea2084a0489db68cd0113508f34b6643 "Make many OUString functions take
std::u16string_view parameters" because they did not match the multi-overload
pattern that was addressed there, but they nevertheless benefit from being
changed just as well (witness e.g. the various resulting changes from copy() to
subView()).
This showed a conversion from OStringChar to std::string_view to be missing
(while the corresponding conversion form OUStringChar to std::u16string_view was
already present).
The improvement to loplugin:stringadd became necessary to fix
> [CPT] compilerplugins/clang/test/stringadd.cxx
> error: 'error' diagnostics expected but not seen:
> File ~/lo/core/compilerplugins/clang/test/stringadd.cxx Line 43 (directive at ~/lo/core/compilerplugins/clang/test/stringadd.cxx:42): simplify by merging with the preceding assignment [loplugin:stringadd]
> File ~/lo/core/compilerplugins/clang/test/stringadd.cxx Line 61 (directive at ~/lo/core/compilerplugins/clang/test/stringadd.cxx:60): simplify by merging with the preceding assignment [loplugin:stringadd]
> 2 errors generated.
Change-Id: Ie40de0616a66e60e289c1af0ca60aed6f9ecc279
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107602
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
As asked for in tdf#136244 comment #11. The default fits 4x 2000px
32bpp images, which is 64MiB, which is not that little, but then
4x 2000px is not that much either. So, yes, configurable ...
A good further improvement would be to make the cache grow more
if the memory is available and reduce the size on memory pressure
(https://lists.freedesktop.org/archives/libreoffice/2020-December/086404.html).
Change-Id: Ifa05025ab34630e456465ac8a96950463fd18b60
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107468
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Change-Id: Iab23e399f2650ece702fb1f62d1387acca472b42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107499
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
...following up on the TODO from 84af20ef3ea72190784e9e7be820684c2558ba8c "Make
SchedulerMutex non-recursive"
Change-Id: I3be98f2dba7c7486b79ec1f166431333cc69451a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107423
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I730d99cc9aa519f07d6b1c436d749f2c0b044bfd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107151
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107349
Tested-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
Change-Id: If7f47cf6dad860e4f8eab68931b72a38a7eda136
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107362
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
and we can drop their factories then
Change-Id: I1e261886dd7700710ba628da4bbeeba65efa1531
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107134
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
The code for separately rendering glyphs was used only by OpenGL
code (and temporarily by Skia code).
Change-Id: I8eee764045273705c108f3734b330a2237de15f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107291
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
It is by now practically unmaintained, even bugreports in bugzilla
have been already closed for it. AFAICT this used to be really
used only on Windows, where it's no longer the default.
There's still some OpenGL code left, because there are still two
other places that use OpenGL. One is OpenGL slideshows, which
reuse some of the base OpenGL code (and I've checked they
still work even after this removal). Second one is OpenGL canvas,
which it seems has never been finished or enabled (or so it
most probably should be dumped too).
Change-Id: I7ea5aef77ec252eb8e712d167db591209be84a13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107290
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
While thinking about the "Unlock scheduler in deinit for
ProcessEventsToIdle" patch, I came to the conclusion, that this
mutex should actually be non-recursive. I had a look at the code
and did run "make check" for my symbol build on Linux, but for
the rest I'm reying on the LO CI.
Maybe this can be converted to a std::mutex later. I've updated
the vcl/README.scheduler and added a TODO.
Change-Id: Ib9cb086af74b51e48f99ebfa1201d14db12b140e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107254
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
The scheduler is normally never locked when not processing its own
task lists. So while the fix is correct, that ProcessEventsToIdle
shouldn't run with a locked scheduler, just unlock it in the
actual shutdown case, where the deadlock occurred.
This also reverts commit 46f6b39c6d8acd064bafb2416feba757ba0d0fbc.
Change-Id: If1603c1563772dd1d156dc6d9bcddbf58aa721c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107241
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
For swapping we can change the algroithm of saving and rading
graphics to/from the swap file as the file format doesn't need to
be stable. This duplicates the algorithm, but doesn't change it
yet.
Change-Id: I0b0854b19f4e3f9a34d278f44bd61cd94e133def
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107284
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Ie2dd1635a5f5f677d286011a14b734af7435612a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107231
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
When processing the events, solar mutex will be temporarily released,
and then it's possible that another thread will acquire solar mutex
and try to lock scheduler. This will result in deadlock.
Seen in CppunitTest_sw_core_undo that deadlocked locally on Windows
frequently.
Main thread call stack:
win32u.dll!NtUserMsgWaitForMultipleObjectsEx()
user32.dll!RealMsgWaitForMultipleObjectsEx()
sal3.dll!osl_waitCondition(void * Condition, const TimeValue * pTimeout) Line 82
vclplug_winlo.dll!osl::Condition::wait(const TimeValue * pTimeout) Line 120
vclplug_winlo.dll!SalYieldMutex::doAcquire(unsigned long nLockCount) Line 159
comphelper.dll!comphelper::SolarMutex::acquire(unsigned long nLockCount) Line 87
vclplug_winlo.dll!ImplSalYieldMutexAcquireWithWait(unsigned long nCount) Line 204
vclplug_winlo.dll!WinSalTimer::ImplHandleElapsedTimer() Line 163
vclplug_winlo.dll!WinSalTimer::ImplHandle_WM_TIMER(unsigned __int64 aWPARAM) Line 197
vclplug_winlo.dll!SalComWndProc(HWND__ * __formal, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam, bool & rDef) Line 638
vclplug_winlo.dll!SalComWndProcW(HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam) Line 665
user32.dll!UserCallWinProcCheckWow()
user32.dll!DispatchMessageWorker()
vclplug_winlo.dll!ImplSalDispatchMessage(const tagMSG * pMsg) Line 426
vclplug_winlo.dll!ImplSalYield(bool bWait, bool bHandleAllCurrentEvents) Line 457
vclplug_winlo.dll!WinSalInstance::DoYield(bool bWait, bool bHandleAllCurrentEvents) Line 528
vcllo.dll!ImplYield(bool i_bWait, bool i_bAllEvents) Line 447
vcllo.dll!Application::Reschedule(bool i_bAllEvents) Line 461
vcllo.dll!Scheduler::ProcessEventsToIdle() Line 466
vcllo.dll!Scheduler::ImplDeInitScheduler() Line 129
vcllo.dll!DeInitVCL() Line 483
vclbootstrapprotector.dll!`anonymous namespace'::Protector::~Protector() Line 34
vclbootstrapprotector.dll!`anonymous namespace'::Protector::`scalar deleting destructor'(unsigned int)
cppunitd_dll.dll!CppUnit::ProtectorChain::pop() Line 56
cppunitd_dll.dll!CppUnit::TestResult::popProtector() Line 197
cppunittester.exe!`anonymous namespace'::ProtectedFixtureFunctor::run() Line 332
cppunittester.exe!sal_main() Line 473
cppunittester.exe!main(int argc, char * * argv) Line 380
cppunittester.exe!invoke_main() Line 79
cppunittester.exe!__scrt_common_main_seh() Line 288
cppunittester.exe!__scrt_common_main() Line 331
cppunittester.exe!mainCRTStartup() Line 17
kernel32.dll!BaseThreadInitThunk()
ntdll.dll!RtlUserThreadStart()
Clipboard thread call stack:
ntdll.dll!NtWaitForAlertByThreadId()
ntdll.dll!RtlpWaitOnAddressWithTimeout()
ntdll.dll!RtlpWaitOnAddress()
ntdll.dll!RtlpWaitOnCriticalSection()
ntdll.dll!RtlpEnterCriticalSectionContended()
ntdll.dll!RtlEnterCriticalSection()
sal3.dll!osl_acquireMutex(_oslMutexImpl * Mutex) Line 66
vcllo.dll!osl::Mutex::acquire() Line 57
vcllo.dll!SchedulerMutex::acquire(unsigned long nLockCount) Line 213
vcllo.dll!Scheduler::Lock(unsigned long nLockCount) Line 237
vcllo.dll!SchedulerGuard::SchedulerGuard() Line 60
vcllo.dll!Task::~Task() Line 660
vcllo.dll!Timer::~Timer() Line 61
vcllo.dll!Idle::~Idle()
svxcorelo.dll!SdrPaintView::~SdrPaintView() Line 189
svxcorelo.dll!SdrSnapView::~SdrSnapView() Line 200
svxcorelo.dll!SdrMarkView::~SdrMarkView() Line 193
svxcorelo.dll!SdrEditView::~SdrEditView() Line 125
svxcorelo.dll!SdrPolyEditView::~SdrPolyEditView() Line 58
svxcorelo.dll!SdrGlueEditView::~SdrGlueEditView() Line 40
svxcorelo.dll!SdrObjEditView::~SdrObjEditView() Line 95
svxcorelo.dll!SdrExchangeView::~SdrExchangeView()
svxcorelo.dll!SdrDragView::~SdrDragView() Line 65
svxcorelo.dll!SdrCreateView::~SdrCreateView() Line 200
svxcorelo.dll!SdrView::~SdrView() Line 159
swlo.dll!SdrView::`scalar deleting destructor'(unsigned int)
swlo.dll!std::default_delete<SdrView>::operator()(SdrView * _Ptr) Line 2537
swlo.dll!std::unique_ptr<SdrView,std::default_delete<SdrView>>::~unique_ptr<SdrView,std::default_delete<SdrView>>() Line 2649
swlo.dll!SwDrawFrameFormat::MakeGraphic(ImageMap * __formal) Line 7491
swlo.dll!OutHTML_FrameFormatAsImage(Writer & rWrt, const SwFrameFormat & rFrameFormat) Line 1746
swlo.dll!SwHTMLWriter::OutFrameFormat(AllHtmlFlags nMode, const SwFrameFormat & rFrameFormat, const SdrObject * pSdrObject) Line 507
swlo.dll!SwHTMLWriter::OutFlyFrame(unsigned __int64 nNdIdx, long nContentIdx, HtmlPosition nPos, HTMLOutContext * pContext) Line 401
swlo.dll!OutHTML_SwTextNode(Writer & rWrt, const SwContentNode & rNode) Line 2509
swlo.dll!SwHTMLWriter::Out_SwDoc(SwPaM * pPam) Line 834
swlo.dll!SwHTMLWriter::WriteStream() Line 471
swlo.dll!Writer::Write(SwPaM & rPaM, SvStream & rStrm, const rtl::OUString * pFName) Line 272
swlo.dll!SwWriter::Write(const tools::SvRef<Writer> & rxWriter, const rtl::OUString * pRealFileName) Line 861
swlo.dll!SwTransferable::WriteObject(tools::SvRef<SotStorageStream> & xStream, void * pObject, unsigned long nObjectType, const com::sun::star::datatransfer::DataFlavor & __formal) Line 823
vcllo.dll!TransferableHelper::SetObject(void * pUserObject, unsigned long nUserObjectId, const com::sun::star::datatransfer::DataFlavor & rFlavor) Line 879
swlo.dll!SwTransferable::GetData(const com::sun::star::datatransfer::DataFlavor & rFlavor, const rtl::OUString & rDestDoc) Line 619
vcllo.dll!TransferableHelper::getTransferData2(const com::sun::star::datatransfer::DataFlavor & rFlavor, const rtl::OUString & rDestDoc) Line 389
vcllo.dll!TransferableHelper::getTransferData(const com::sun::star::datatransfer::DataFlavor & rFlavor) Line 287
vclplug_winlo.dll!CXTDataObject::renderSynthesizedHtmlAndSetupStgMedium(tagFORMATETC & fetc, tagSTGMEDIUM & stgmedium) Line 516
vclplug_winlo.dll!CXTDataObject::renderSynthesizedFormatAndSetupStgMedium(tagFORMATETC & fetc, tagSTGMEDIUM & stgmedium) Line 419
vclplug_winlo.dll!`CXTDataObject::GetData'::`1'::catch$1() Line 269
vcruntime140_1d.dll!_CallSettingFrame_LookupContinuationIndex() Line 98
vcruntime140_1d.dll!__FrameHandler4::CxxCallCatchBlock(_EXCEPTION_RECORD * pExcept) Line 1367
ntdll.dll!RcConsolidateFrames()
vclplug_winlo.dll!CXTDataObject::GetData(tagFORMATETC * pFormatetc, tagSTGMEDIUM * pmedium) Line 261
vclplug_winlo.dll!CXNotifyingDataObject::GetData(tagFORMATETC * pFormatetc, tagSTGMEDIUM * pmedium) Line 86
ole32.dll!HandleFromHandle(IDataObject * pDataObj, tagFORMATETC * pformatetc, tagSTGMEDIUM * pmedium) Line 2048
ole32.dll!RenderCurrentFormat(HWND__ * hClipWnd, unsigned int cf, tagSTGMEDIUM * pmedium, IDataObject * pDataObj) Line 4057
ole32.dll!RenderFormat(HWND__ * hClipWnd, unsigned int cf, IDataObject * pDataObj, void * pvMTADataObject) Line 4191
ole32.dll!ClipboardWndProc(HWND__ * hWnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 683
user32.dll!UserCallWinProcCheckWow()
user32.dll!DispatchClientMessage()
user32.dll!__fnDWORD()
ntdll.dll!KiUserCallbackDispatcherContinue()
win32u.dll!NtUserGetMessage()
user32.dll!GetMessageW()
vclplug_winlo.dll!CMtaOleClipboard::run() Line 654
vclplug_winlo.dll!CMtaOleClipboard::oleThreadProc(void * pParam) Line 676
ucrtbased.dll!thread_start<unsigned int (__cdecl*)(void *),1>(void * const parameter) Line 97
kernel32.dll!BaseThreadInitThunk()
ntdll.dll!RtlUserThreadStart()
Main thread hold solar mutex when it locked scheduler in
ImplDeInitScheduler; then it released solar mutex in
WinSalInstance::DoYield, and finally tried to acquire it again in
WinSalTimer::ImplHandleElapsedTimer.
At the same time, clipboard thread acquired solar mutex in
TransferableHelper::getTransferData2. Then it attempted to lock
scheduler in Task::~Task.
Change-Id: I2ac87c8ac298104043f5b9b5d6760bea0f408f54
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107218
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I3e22c2000da03f6f3345353846213203993aa865
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107192
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I6e45c711b406a3836dd230ceaa738c5a250ff846
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107173
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
I think this is a better reflection of the original intent here before
commit 1441ab9c75a2f0ac664983db22b681a1b602f8a9
fix possible SIGSEGV
and
commit 8f54136caa786523fd224f6c98fc8e7c45cd805d
use std::unique_ptr for SalLayout
Change-Id: Ib4ab63334e644a8136b9f7da20916715850563ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107171
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
We mean CGLayer, so say so.
Change-Id: Iaa24471ce790114dc5cf2bbf353f9aa4a1d59893
|
|
Change-Id: I00c91c3b0ee1fd2ebfb3662bae2caf79962654f0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106973
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
so we can remove some redundant nullptr checks, maybe making this
a tiny less confusing
Change-Id: Icba4ea1edd5b4883a294f52e0facaab631d94aed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106860
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
I'm not certain if the lack of an OutputDevice* to allow mirroring the
drawing in a RTL environment is deliberate or not, but it seems
plausible that is what we want here and that we are already mirrored by
the time we get here, so let FileDefinitionWidgetDraw call the
underlying post-mirror stage drawing functions directly
Change-Id: Ia80a5c0438ed28ab3f9bd91b19494a19875bcab3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106858
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I57ff433551457c609d3809bb2ad1f7e4b10cf364
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106857
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I8ba1214500dddaf413c506a4b82f43d63cda804b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106559
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
to capture that if pSrcGraphics is non-null then pSrcOutDev is
always non-null and that if pSrcGraphics is null then pSrcOutDev is
unused
Change-Id: I7b1ecb35724ef9a7afb4ab4021b33e9f00a9ea3a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106808
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
likewise:
DrawOutDevDirectProcess
ImplDrawWavePixel
DrawOutDevDirectCheck
and various members of SalGraphics dropping redundant nullptr checks
Change-Id: Iaa1ab7c8a605361a7c9cce0aeee974eec9ff246e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106788
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
this is noticable since...
commit 4deadc3c78949c18bb886eb1f66caa8f3cd7a2df
Date: Fri Sep 25 13:30:11 2020 +0200
disentangle AA and B2D use in VCL drawing
but is probably a problem since around...
commit b5f081e1ac14f60497f62a27be86b07b0baa42f7
Date: Thu Aug 30 23:41:36 2018 +0200
Support RTL layout in VCL using Matrices
Change-Id: I6bcad30982ee1eaee96bc6721d73e1e545f0d86a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106761
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
...as they are only ever set to LO-/HIWORD values cast to a signed integer type
Change-Id: I82f9a80bab7c3b7e3ee5545725efd0d88601b8c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106755
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I67e2eb986b48591b7f758bbb5c1d72b6a322d4d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106705
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
fields need to be signed
regression from
commit 548d77d0c06f7088dd3eb408797aa1fc1d7eb277
Author: Noel <noelgrandin@gmail.com>
Date: Fri Nov 13 10:23:36 2020 +0200
tools::Long->sal_uInt16 in ImpErrorQuad
Change-Id: Ia2a70d55d9af2ea3712ace3394c0de3931bee95c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106709
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ib0aee0e01c662a4d6a9231d9a1a951c9fa68eff4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106693
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
Change-Id: I5399f5aca07dd27dfc668cad66cf347936bbba7a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106664
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
Did not work at all
Change-Id: I388ce579691a1e7ad2eff8420c2f8b6b3e939ef0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106665
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: If69eac02db386fd94420aff5a8b082281e913c15
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106658
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
Change-Id: I38bf65eb96b560970fb03eafaea89446e89a2896
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106591
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
Change-Id: I7c1cc683e8c5d5bdc00c1e3d3d0a2c85846bbda0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106560
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
VCL GTK (in contrast to X11 and apparently Windows) pre-activates popup
menus in GtkSalMenu::UpdateFull by calling GtkSalMenu::ActivateAllSubmenus.
Before this patch, this, called on the main menu, would not activate
the main menu itself (which does get activated in X11 eventually).
This patch changes the logic to also activate the main menu.
This patch deals only with gtk3. A followup patch would do the analogous
change in the VCL Qt5 plugin in Qt5Menu::DoFullMenuUpdate.
I haven't discovered yet where this type of functionality is currently
tested, so sadly I don't have an idea how to test this and so didn't include
a test case.
Change-Id: I6cd9929acfd3b3af731bbc62d649d643044ca692
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106454
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ie49f4113332de5c4fa825f93dde46bb408187fe4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106536
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
regression from
commit 548d77d0c06f7088dd3eb408797aa1fc1d7eb277
Author: Noel <noelgrandin@gmail.com>
Date: Fri Nov 13 10:23:36 2020 +0200
tools::Long->sal_uInt16 in ImpErrorQuad
Change-Id: I29403afcb7d88dee27f1565793ffbd7ad4c53a17
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106545
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I42208dd69bc790d136637253d7f1ae39a6306820
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106503
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
|
|
of widgets loaded from the same .ui snippet in the same dialog so
ui-testing can identify the right one
Change-Id: I2ecc7fd60ab891ae9f94971a3035585d4500f694
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106500
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I78e2b60945f256de5e7455373a2ecff72f9eaae7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106484
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|