summaryrefslogtreecommitdiff
path: root/vcl
AgeCommit message (Collapse)AuthorFilesLines
2021-05-27no need to allocate PrintFont separatelyNoel Grandin3-139/+139
Change-Id: I8bc213e096ad6ae83d88c548ff8685a872c5ea91 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116258 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-27gtk4: reenable EntryTreeViewCaolán McNamara1-11/+23
Change-Id: If1b953f231199fe132783dafb0e26641b7b14d45 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116268 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-27gtk4: continue to provide Paintable via cairo surfaceCaolán McNamara1-29/+96
instead of squeezing through a GdkTexture and losing hidpi surfaces Change-Id: I1ee75ff804d1d769273e2f80335bfdf528ae8039 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116267 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-27no need to allocate these on the heapNoel Grandin1-7/+7
Change-Id: I6933260f589c67f463ee60572a31c52c6be7eb66 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116262 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-27TETextPortion can be allocated inside the vectorNoel Grandin4-110/+109
Change-Id: Ib54b94f5dcb2a9cf422ef30db99926f200b749c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116261 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-27no need to allocate these on the heapNoel Grandin2-10/+14
Change-Id: I0740f7194c589d6949a816f365cd54403be72118 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116260 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-27gtk4: old GtkImage can be new GtkImage or GtkPictureCaolán McNamara1-13/+78
change to GtkPicture under some circumstances. GtkImage will force a square image so try and use GtkPicture for the non-icon case. The About dialog shows the need to use unscaled image if using GdkTexture. Change-Id: Iceb1e7dee5b53c93ceb432618fdda5650863029f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116256 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-27gtk4: reenable menubuttonCaolán McNamara1-9/+111
not really expected to work yet Change-Id: I27fe5ecd8f78017dd669aeba0c1d8db797e91e3e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116237 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-27no need to allocate this on the heapNoel Grandin1-3/+3
Change-Id: Ief47dc18f858d4f90a537622c06f3df8e9f72fff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116249 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-27gtk4: strip accelerator tagCaolán McNamara1-1/+11
unclear yet if there's another way to do it Change-Id: Ic3355d45bb3bb73c446b576b9cc65204cd39d180 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116238 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-27gtk4: drop can't focus from GtkBox and GtkGridCaolán McNamara1-1/+15
it used to be that can-focus of true in a child with false in the parent allowed focus in the child, that's no longer true. We're already clearing can-focus of false from a widget if a child has can-focus but we build notebooks (especially) with separate .ui files each page so can't tell that there will be contents inserted. Plenty of ways to target just the case for notebook contents, but seems easiest to just clear can-focus of false from all GtkBoxes and GtkGrids. Change-Id: I460f3d5990a5df7b8b8e7d37ce592a5731794f31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116226 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-27gtk4: apply 'border' to dialog content child widget if it existsCaolán McNamara1-23/+33
and if it doesn't apply to the object itself Change-Id: If73e1e78ddc7945480bb2c2e59bf50350ba53e3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116225 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-27osl::Module::loadRelative against symbol from executable is unreliableStephan Bergmann1-128/+44
It turns out that c8976bdfdfa361fec9e1e5ff342094e409981fad "tdf#137208 Assume that dladdr provides an absolute pathname" is wrong with glibc if the requested address is in the executable itself, not in a dso. In that case, glibc just returns argv[0] as Dl_info::dli_fname (see <https://sourceware.org/git/?p=glibc.git;a=commit;h=b8565e7817d7c6afd8eac804867b88c9bad1c9f1> "Fill in correct information if symbol is in main program"), which need not be absolute. With > cp workdir/LinkTarget/Executable/fftester instdir/program/ that causes > LD_LIBRARY_PATH=`pwd`/instdir/program instdir/program/fftester sd/qa/unit/data/cgm/pass/binary_corvette.cgm cgm to crash (cf. comment at <https://gerrit.libreoffice.org/c/core/+/111004/2#message-239c434e95f6fee5f5232e32f731595f56116aa3> "tdf#137208 Assume that dladdr provides an absolute pathname"): The call to osl::Module::loadRelative dlopen's instdir/program/libsdlo.so with a relative pathname containing at least one slash, which in turn causes dladdr with an address from libdlso.so to also return a relative pathname, which causes osl_getModuleURLFromAddress on such an address to fail, which causes the CGMPointer ctor in sd/source/filter/cgm/sdcgmfilter.cxx to set m_pPointer to null, causing SIGSEGV when TestImportCGM dereferences it. (Whereas e.g. > (cd instdir/program && PATH= LD_LIBRARY_PATH=`pwd` fftester sd/qa/unit/data/cgm/pass/binary_corvette.cgm cgm) would dlopen libsdlo.so with a relative pathname consisting just of a filename without a slash, so dlopen would search for the library, record its absolute pathname and return that from dladdr, and the program would have worked.) Change-Id: Ifa23124090275a397d4a9b0672ab845af23cf4d9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116194 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-05-26Cleanup Library_vcl.mkJan-Marek Glogowski1-96/+56
Merge a few duplicate calls and generally prefer inline $(if ..) over extra ifn?eq lines. There are minimal changes: * Move X11 settings from !DISABLE_GUI to USING_X11 * Move the vcl_opengl_denylist from WNT+!DISABLE_GUI to WNT only * SkiaHelper compiles to "isVCLSkiaEnabled() { return false; }" without the enabled feature, so move code to the general list. * Move the SKIA library to !DISABLE_GUI, where the code is * Move PDFium source + external to generic lists * "extract" common ${vcl_headless_freetype_libs} Change-Id: I9836ab3c1791b6406984ec4d4c27a8924faffdca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116220 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-05-26gbuild: Handle glxtest + vclmain usage via macrosJan-Marek Glogowski5-82/+10
Use a macro to do the same checks for all Executable with glxtest or vclmain usage. Both are static libraries, so every user has the same dependencies. Introduces: * gb_Executable_use_vclmain * gb_Executable_use_glxtest Change-Id: Ib80b4e7c6f5078d47ad8f1ec5708a7174415f705 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116145 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-05-26gtk[3|4] gtk_widget_get_root returns null when no rootCaolán McNamara6-30/+31
unlike gtk_widget_get_toplevel which returns itself if that is the case Change-Id: If977440265bd8ae2c892ee5d52091ebf16ad03cf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116218 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: add parent-less widgets to default containerCaolán McNamara1-3/+5
Change-Id: Ia0c06db5a4f1c4ce453c424835d032ebb021f40a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116217 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: wrap gtk_buildable_set_name/GtkBuildableIface::set_idCaolán McNamara1-31/+27
Change-Id: Ia19179bc5879218495184dcec80fd96eb375bc00 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116209 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: wrap gtk_buildable_get_name/gtk_buildable_get_buildable_idCaolán McNamara1-74/+34
Change-Id: Iadafc7a7b4eb49bd15c22f006955003554cd7079 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116208 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: "focus" signal is goneCaolán McNamara1-0/+12
its not clear yet if there's another way to do what we want here Change-Id: Id9e54a481ac33038d605b0488315e73fd5b5a310 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116205 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: reenable NotebookCaolán McNamara1-15/+18
Change-Id: I5342e5ef35f9d270d8ac51c3d696beddc8b67529 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116203 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: restore ContainerCaolán McNamara1-4/+3
Change-Id: Ide82777fadbee2c644c3a19d418c3683f6ff2c11 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116201 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: strip GtkLinkButton xalignCaolán McNamara1-0/+9
Change-Id: I44065da82f577e226ee1c52f858917a1d825d9ce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116200 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26loplugin:includeform (clang-cl)Jan-Marek Glogowski1-3/+2
Change-Id: I12632b72c8e4e95bef24c8c26bee5887f9695d66 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116143 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-05-26gtk4: convert old default invisibility to explicit invisibilityCaolán McNamara1-9/+60
Change-Id: I7aeab1a0857ffdf3990ecf69f5de1f6041fa562e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116181 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: reenable TreeViewCaolán McNamara1-23/+61
Change-Id: I9797e789b9af1985b1a78e00e68a23b7fd048d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116175 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: GtkSpinButton has a GtkText not a GtkEntry nowCaolán McNamara1-0/+29
so can't call gtk_entry_set_icon_from_icon_name on it Change-Id: I596a37ec935240b9ed92361e428e398010911b28 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116174 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26ofz#34602 missing a componentCaolán McNamara1-0/+2
Change-Id: Ib2f281579af58f536f1291866c9990e8fc9e8cef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116146 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-26gtk4: reenable ImageCaolán McNamara1-28/+43
this is possibly wrong wrt scaling/hidpi, something of a stopgap for now anyway I feel Change-Id: Ia0e4bbdf760d7577c304f489795005f7252eb57b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116131 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-25ofz#34602 missing a componentCaolán McNamara1-0/+2
Change-Id: Id069c3718a632046fa9df59ee145e0c904aaf718 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116129 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-25gtk[3|4] reimplement ImmobilizedViewport without access to opaque GtkViewportCaolán McNamara1-33/+69
Change-Id: Ia7c15c57d399a05f8c94b739a2d64b1cb16735bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116091 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-25gtk4: enable some more working dialogsCaolán McNamara1-0/+2
Change-Id: Ia6c5137ca09629919d593f636eaebb5a28a1aa05 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116095 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-25gtk[3|4] finish rename to immobilizedCaolán McNamara1-10/+11
Change-Id: I829ad504b791894259b94c8d015795a0dedce449 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116088 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-25Fix typoAndrea Gelmini1-1/+1
Change-Id: Ie75d4521aabc42cc57cccec5f77ec9147aca180d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116074 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2021-05-24gtk4: restore collapse/undo_collapse for calc cell reference dialogsCaolán McNamara1-16/+64
hide the entire titlebar for now, maybe we should just hide the action widgets and keep the titlebar. Change-Id: I81667ac0d5edbf4f5c7e12909672fa0de84c059a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116071 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk4: reenable some working simple calc dialogsCaolán McNamara1-0/+8
Change-Id: I328d5b36dbc0a856cbad21cc57c37d3600072875 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116070 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk4: restore IconViewCaolán McNamara1-31/+35
sans popup-menu for now Change-Id: I5708b8f11d8ee50bba974174a2e3cfdb128d0486 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116068 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24no need for an image-position if the button only has an imageCaolán McNamara1-0/+1
and no text for the image to be relative to Change-Id: Ic06dfe6451708590d08a3d2b6821f68a67048de7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116065 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk4: always transform internal-child GtkButtonBox to GtkHeaderBarCaolán McNamara1-3/+22
except for GtkMessageDialog ones Change-Id: I7bb1ff1533ebc07872342fdf632f5a950bf73d88 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116064 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk4: transform GtkScrolledWindow shadow-type to has-frameCaolán McNamara1-0/+10
Change-Id: Ib9970bad9fbf32def0bcea6ffde42e4204dd4a06 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116063 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk4: make opengl slide transitions work againCaolán McNamara2-7/+11
Change-Id: Id64d8759d1c98a973445f52ccfc5df9f0e084743 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116060 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk4: restore GtkFixed container for SalObjectsCaolán McNamara2-7/+11
put the DrawingArea into an Overlay so the overlay will take the size of the DrawingArea. Put a GtkFixed into that overlay which will then also mirror the size of the DrawingArea. Keep that GtkFixed because the SalObject stuff is set up to use a GtkFixed and its just easier to do it this way than use the overlay directly. Change-Id: I937b3740fd809660ee0edef56d5cf036f2503892 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116059 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk[3|4] separate the idea of a drawing widget and a container widgetCaolán McNamara2-26/+32
which were the same thing in gtk3, lets try an overlay for now as the gtk4 container Change-Id: Id368ddf5ef80a17453ea7fb5662b23897975d21e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116058 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk[3|4] add a queue_draw to avoid GtkFixed castCaolán McNamara3-3/+9
Change-Id: I093b62f9530b28ae932338163606e78fca5752d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116057 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk[3|4] wrap gtk_im_context_set_client_[widget|window] variantsCaolán McNamara3-17/+13
Change-Id: I939786e45929ca81dcda479d0fc897f449f890ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116046 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk[3|4] wrap surface_create_similar_surface variantsCaolán McNamara2-11/+16
Change-Id: Iaa101b1d691fa84693b350460a4c69a1f5aad245 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116045 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk[3|4] wrap gtk_widget_get_window/gtk_native_get_surfaceCaolán McNamara5-54/+46
Change-Id: I21c1cf9ab65e056242f09c8c2bbd84afa9ac42e7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116044 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk4: get DrawingArea working enough for tip of the day dialogCaolán McNamara4-36/+180
Change-Id: Ifd2f4029b521d8f513f4fa738e4ce1e59c0ade0a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116042 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24gtk4: background colors have to be solid for themeingCaolán McNamara1-1/+1
Change-Id: I3a644c5674897ef6994d15ec0de614993d65d9d2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116041 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-24tdf#142390: fix fatcross cursor on WindowsMike Kaganski2-0/+1
Make it 1-bit cursor resource instead of 32-bit icon; and add it to the appropriate makefile. Change-Id: Icd140f7065f6ec94683e94201d96187f38ab683b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115962 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>