Age | Commit message (Collapse) | Author |
|
after my "Convert SAL_EVENT to scoped enum" commit
Change-Id: I1a52a1e3428c9b68d67bd521a3136f3a529392f5
|
|
after my "WindowStateState scoped enum" conversion.
WorkWindow::IsMinimized needs to check the return code of
SalFrame::GetWindowState, or it can end up reading uninitialised memory.
So mark the member as SAL_WARN_UNUSED_RESULT.
Change-Id: Iaeb132ed2fbf08162dbd7ec2e126dfa679cbda6c
|
|
Change-Id: I4e605e7acfe9d4fe409d32f20880b4c0e85a0ea7
|
|
Change-Id: I6d92c86035dd321eb6df46bcd01aed7a0113b0a4
|
|
Posix requires that a process forked from a multi-threaded process only calls
async-signal-safe functions between fork and exec. This has been observed to
cause trouble at least in an ASan build, where a forked sub-process (that wants
to proceed to exec java from getJavaProps,
jvmfwk/plugins/sunmajor/pluginlib/util.cxx) hangs in
__sanitizer::BlockingMutex::Lock from within ASan's operator new replacement,
from within the SAL_INFO in SvpSalInstance::CloseWakeupPipe, from within the
atfork_child handler established with pthread_atfork. The rest of the calls in
SvpSalInstance::Create-/CloseWakupPipe appear to be async-signal-safe.
This pthread_atfork handler got introduced with
dbced8e8584b631524dacf607f752ebb734901db "Don't share the wakeup pipe with child
processes". It is irrelevant when the child process will proceed to call exec.
And if the child process does not proceed to call exec (which is the intented
use case why it got added), the above-mentioned Posix requirement makes it look
unlikely that the child will operate properly (i.e., not call any async-signal-
safe functions), unless the parent process was single-threaded.
Change-Id: I9ecaf98597b396e0db83fe98fb11a7df7686e1d6
|
|
Change-Id: I5aa3bcf16cbcda984a74ec85a49a354087f5044e
|
|
Direct 2D accepts colours specified as UINT32 ARGB values or
floats. However GDI presents colours as COLOREFS which are 32 bit
FBGR (F is a flag not an alpha) values. Passing a COLORREF to
D2D1:ColorF swaps the red and blue channels. This patch converts
the COLORREF into RGB float triples using the GDI colour macros.
Change-Id: Iee5c00bfb10fa8771a2a1019976f70633cca4094
Reviewed-on: https://gerrit.libreoffice.org/24819
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Martin Hosken <martin_hosken@sil.org>
|
|
Change-Id: Ia00af427fda31867a19457b7ef30158b385639e6
|
|
Change-Id: Ie3a8435d0adff795645618deb2c3c3da813e54f3
Reviewed-on: https://gerrit.libreoffice.org/24681
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: I5448c7e46042850f18970c7613ec5a37df57bce7
|
|
Change-Id: Ic8259d81d8080c518aa07697e253a59cd6efaa4b
|
|
Use 'enable/disable' terminology consistently: don't mix 'enable' and
'set' in the same phrase if they both actually refer to the same
thing. Also, don't say that it is 'already set' when it is already
'disabled'.
Change-Id: If4cea9845b47cdf678d5591f05ac08cc086c9a0b
|
|
Changed the GDI style structures to use inheritance,
thus object deletion no longer requires a static_cast
Used std::unique_ptr for GDI objects to enforce object ownership
Modified the WMF Writer to use std::vector, instead of a
raw pointer array when processing handles
Change-Id: Ic635ff9d641427b901eb18468529ea6367859b53
Reviewed-on: https://gerrit.libreoffice.org/24634
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: I4cb51f537cf6b40748dd8902dc39362d8846ba22
Reviewed-on: https://gerrit.libreoffice.org/24708
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
e.g. templates menubutton button which isn't torn down and recreated each time,
but hidden/shown
Change-Id: Ib80e0dc0ca5abfb5efa2966283034b7ba1840978
|
|
Change-Id: I137c78b337e57d3442db08334128e79d186b278f
Reviewed-on: https://gerrit.libreoffice.org/24753
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
|
|
No need for VclEventListeners to be VCL_DLLPUBLIC
Build passed "make check" on linux and Windows.
Change-Id: Ib3330b3af434ee4d3622c6e0d6ac705c3087c672
Reviewed-on: https://gerrit.libreoffice.org/24766
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: I51b5943f52ccdce6b4b50131f5f2b7d2c1ff7368
|
|
Change-Id: I830e313352b69a7665bff953aadb1334be0dc847
Reviewed-on: https://gerrit.libreoffice.org/24509
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: I4ba692b73ce7d6cf84fdf528b6d410e07cbc36ca
Reviewed-on: https://gerrit.libreoffice.org/24719
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@documentfoundation.org>
|
|
Change-Id: I824fa3c83a5bc8b68a6554c9bfe5ce5b3c2d711f
|
|
Change-Id: Ia4f31a03b20bb0abe7e0ff8e423a0b046a828607
|
|
Change-Id: I504b84ad39a8519f495676b7821e3079ac74aaf0
|
|
then update the whole thing by re-calling SetFrame
Change-Id: Ib16006a76ca04dc104232a056c43fda2b5b24074
|
|
Change-Id: I8689abacbfc970a9124bb97a3962bcfb0df9c67d
|
|
When toggling the "Apply replacement table" setting in
Tools->Options->Fonts, the fonts are re-enumerated once per
OutputDevice, so if the sorting isn't maintained properly duplicates
will be inserted and the number of font faces goes from 400 to 40k.
(regression from a20a52a2f47c67ab30bf764d420c663f7173f032)
Change-Id: I7daa53ff28187056e34efa4e2173dea45a47df27
|
|
Change-Id: Ibc2fc35c3d5315eb7d25181c2c2eba4cb5509a96
|
|
encode the GtkSalMenu and the item id into the action_name so
each one is unique and directly refers to the menu and item in the
menu so knowing which one is which is direct and simple
Change-Id: I81bb278e73946f864e29aeab884e07e16835dad3
|
|
Change-Id: Ic7442209efac40bd0cd034ff006e87128b0bea35
|
|
The way gtk works doesn't exactly map to our ToolBox
behavior, but still we can use that to some extent.
Change-Id: Ia525e4356a612e3abfacb54d591dba05750278f2
|
|
Change-Id: I5052f0c3e2c8739b336da52ef9590e5008255247
|
|
... as it causes a crash at exit.
This reverts commit 9ff1d7f8140de1224bb37fba0cb266a58f37e66d.
Change-Id: I48bfd8974e6ed6c5ba3f8282eb8717f685d580be
|
|
unnecessarily passing primitives by const ref.
Suggested by Tor Lillqvist
Change-Id: I445e220542969ca3e252581e5953fb01cb2b2be6
Reviewed-on: https://gerrit.libreoffice.org/24672
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: I4557d643debbf47c10e1ccd2141f04680333a11d
Reviewed-on: https://gerrit.libreoffice.org/24685
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: If5c522a58bfced722e3b423c867911d3dc6cec48
|
|
Anectodal evidence: for removal of 32 slides from 64 slide presentation,
time spent in Window::CallEventListeners has been cut down from 70% to
19% of the total time.
Change-Id: Ic8fbb44fa935f068e1b18235592dec0d7e71aec7
|
|
ctrl+shift+N, and click new folder, no keyboard input is accepted.
The dialogs don't get keyboard events, because the keyboard events
go to the top level window because of...
commit 011ce226e89ecabaf621603d692547c88061eaba
Author: Caolán McNamara <caolanm@redhat.com>
Date: Tue Jan 19 13:22:10 2016 +0000
Resolves: tdf#99604 ungrab modal dialogs
(should be tdf#96604) which stripped away the grab from the sub dialog
but I did that because menu dropdowns from comboboxes inside modal
dialogs didn't receive mouse focus otherwise.
I had set our "modal" dialogs to be truly modal and triggering that
problem with
commit 8d5822983e9b6a1e04874ce4d2c807fd0cf1ee04
Author: Caolán McNamara <caolanm@redhat.com>
Date: Mon Dec 14 11:36:50 2015 +0000
Related: rhbz#1290014 gtk3: use gtk_window_set_modal on modal dialogs
which makes modal dialogs (which are most of them) place correctly
under wayland. Modeless ones are still uselessly shoved far to the
left, but this makes things near usable and gives the same "graying
into the bg" effect for the main window as other gtk apps
which I still contend is "a good thing"
if we stop removing the grab from the modal dialog, then we still have
the problem that the menu dropdowns from comboboxes inside modal dialogs
don't receive mouse focus otherwise.
After trying to add/remove grabs around showing/hiding menus we run
into another pit of trouble
(commit 72e6a1365cb08986b542a5beb797634bca62d85b
Author: Caolán McNamara <caolanm@redhat.com>
Date: Wed May 4 16:29:35 2016 +0100)
so, lets save the widget that has the grab before showing our first
menu, clear the grab, and restore it on hiding the first menu again.
and still ditch that metacity hack around thing at this point too
I truly hate this crap
Change-Id: If10e758585f156b33680b8d40355302cc1ae72f3
|
|
focus"
cause testing in libreoffice 5-1 shows that it breaks the menus there, we
need that more complicated grab after all, we just don't see that on
master because of the native menus in use there.
This reverts commit 72e6a1365cb08986b542a5beb797634bca62d85b.
|
|
after commit b6f3b2b0ab9404917b7805bb89701c110b468768
"tdf#62525 vcl: use cow_wrapper for wall"
OutputDevice::DrawBitmapWallpaper passes a stack allocated object to
Wallpaper::ImplSetCachedBitmap, which in turns takes a pointer to that
object, and then unconditionally deletes that object in it's destructor.
The original code did a
*mpCache = rBmp
so restore that.
Change-Id: Ie65fb84e48750bb2c698dc08e0b6c5c7a0dea694
|
|
ctrl+shift+N, and click new folder, no keyboard input is accepted.
The dialogs don't get keyboard events, because the keyboard events
go to the top level window because of...
commit 011ce226e89ecabaf621603d692547c88061eaba
Author: Caolán McNamara <caolanm@redhat.com>
Date: Tue Jan 19 13:22:10 2016 +0000
Resolves: tdf#99604 ungrab modal dialogs
(should be tdf#96604) which stripped away the grab from the sub dialog
but I did that because menu dropdowns from comboboxes inside modal
dialogs didn't receive mouse focus otherwise.
I had set our "modal" dialogs to be truly modal and triggering that
problem with
commit 8d5822983e9b6a1e04874ce4d2c807fd0cf1ee04
Author: Caolán McNamara <caolanm@redhat.com>
Date: Mon Dec 14 11:36:50 2015 +0000
Related: rhbz#1290014 gtk3: use gtk_window_set_modal on modal dialogs
which makes modal dialogs (which are most of them) place correctly
under wayland. Modeless ones are still uselessly shoved far to the
left, but this makes things near usable and gives the same "graying
into the bg" effect for the main window as other gtk apps
which I still contend is "a good thing"
if we stop removing the grab from the modal dialog, then we need to grab
the keyboard and mouse on to the menu on showing those. This then runs
into the problem that sometimes we want the keyboard to go to one window
and the mouse to go to another, i.e. mouse to the floating menu and the
keypresses to its parent combobox.
Which was the joy of...
commit 27e0fee7da99f3df722668d132bc034bef421514
Author: Caolán McNamara <caolanm@redhat.com>
Date: Fri Mar 27 15:28:28 2015 +0000
gnome#745909 grab/ungrab keyboard for menus
and subsequent fix of
commit 57ec66e294b1405a85029aa1f1c0e9485ad4e5b4
Author: Caolán McNamara <caolanm@redhat.com>
Date: Thu Jul 23 09:55:01 2015 +0100
Resolves: tdf#92689 grab keyboard focus to parent, not to earlier generations
so...
lets drop the ungrab on modal dialog attempt and leave that alone. That means
that the keyboard focus travels around the modal dialogs stack correctly.
For the mouse and keyboard events in menu problems, instead gtk_grab_add on the
menu itself, and convert the separate grab of keyboard and mouse to different
places with a single grab of everything to the menu, and in the keyInput of
such menus where the keyInput would have gone to their parent in the past,
forward it on ourselves directly.
Using the gtk_grab_add makes the bOwnerEvents mode of mouse grabbing not work
correctly anymore. So throw my hat at it, and instead use the simpler mouse
grabbing where all events go to the menu, and doesn't send the events outside
of it to the parent, the side effect is that now clicking outside the menu
doesn't make it go away automatically because its the parent window which used
to do that.
So instead of dismissing the menu within the gtk plugin when the button click
is outside the application, take it onto ourselves to dismiss the menu when the
button click is outside the menu.
and ditch some metacity hack around thing at this point too
I hate this crap
Change-Id: If10e758585f156b33680b8d40355302cc1ae72f3
|
|
Change-Id: Ifb4a19bf9c86cf6294859da73ac380e93b2deb45
|
|
Change-Id: Ic0618ff8a8f01937a467e4ba5184fe68f14cd24b
|
|
Change-Id: Iaf0b288a4c40f1e471a0a59b6baf17c317810d23
Reviewed-on: https://gerrit.libreoffice.org/24575
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: I25ddaeb051f171388bb490a23bf03dbaf0add281
Reviewed-on: https://gerrit.libreoffice.org/24438
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: Iffb82a2cee1a28d89eeea2b905aaa14086ee475a
|
|
Having SolarMutexReleaser effectively do Reschedule() on WNT and not on
other platforms doesn't seem such a good idea. Let's try to restrict it
so that it still calls ImplSalYieldMutexAcquireWithWait() but no longer
dispatches messages, timers and idles.
(regression from 482c52e91fe41a52e68827e9bf64a9736427d517)
Change-Id: I52a2c88e9c2473e35909bf270b9e3ae7acbe0d17
|
|
Change-Id: I58e4a63bce17b880a97c7ccfb4d42dfb930e54c5
Reviewed-on: https://gerrit.libreoffice.org/24268
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ia81d3b30a874c2e722f7b836db9fab0be2d6e27b
Reviewed-on: https://gerrit.libreoffice.org/24488
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: Ic758f578d44f8c3fef71ff8ed6ff710c4f1458b0
|
|
since commit 4cab94239be70bd5800a8808652514f14501d303
Change-Id: I8fbd55977bdf8531a66123948c0c4d23657713d4
Reviewed-on: https://gerrit.libreoffice.org/24558
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|