summaryrefslogtreecommitdiff
path: root/vcl
AgeCommit message (Collapse)Author
2016-10-19Avoid AskConfig when setting font familyLuke Deller
Avoid calling the expensive ImplFont::AskConfig from Font::SetFamily as we are just going to overwrite the font family anyway. It looks like this crept in accidentally in the recent refactor commit e418d1a9c87ce01b75141f92dc249c7fb1a1bdcb Change-Id: I12a9bde77ffcc81f03c37ce400c59ea3a9acac31 Reviewed-on: https://gerrit.libreoffice.org/28901 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: jan iversen <jani@documentfoundation.org>
2016-10-18Fix debug build and few cleanupsKhaled Hosny
Change-Id: I805962667c3ef2dcaf07a0acebeacca74c74892a
2016-10-18Add feature support to CommonLayoutMartin Hosken
Change-Id: I19a0e26cefa5e4185df961ae0f6f2f37811ae5bb Reviewed-on: https://gerrit.libreoffice.org/29978 Reviewed-by: Khaled Hosny <khaledhosny@eglug.org> Tested-by: Khaled Hosny <khaledhosny@eglug.org>
2016-10-18Rewrite AquaSalGraphics::DrawSalLayout()Khaled Hosny
Slightly cleaner code and now handles glyph rotation for vertical text. Change-Id: I98cc8fd7df5e73068294e4d7dd6b38a71dcbdcc7
2016-10-18Support vertical text in CommonSalLayoutKhaled Hosny
Change-Id: I52a71c9c21ad75c7cb9c8574e5e7e3b7c1c0c0c3
2016-10-18Support font fallback on macOS for CommonSalLayoutKhaled Hosny
Change-Id: Ifd26b7f14ed77a3aa2a38e5961cac5f9bbb6d796
2016-10-18Check SAL_USE_COMMON_LAYOUT envar in one placeKhaled Hosny
Makes it easier to flip the switch in the future (or even do something more fancy other than checking envvar). Change-Id: Ie42ca012c167b2108f0fca1ce9ff7beee95f1be7
2016-10-18Just call ICU directly and cut the middle layersKhaled Hosny
Change-Id: I7603d03fef8ca227c3e6fe25239281d18801522a
2016-10-18Use range loopKhaled Hosny
Change-Id: I5ce49e57ed57378b4b9e16c8bb020048644252a9
2016-10-18Use const referenceKhaled Hosny
Change-Id: I0f632f3a8b480f785608aa081add1b1d2fefd312
2016-10-18Always pass BCP 47 tags to HarfBuzzKhaled Hosny
This is what it is expecting anyway, no need to special case it for Chinese. Change-Id: I6732412375d19816b599005d78abd796f67599ee
2016-10-18Validate Kashida positions in CommonSalLayoutKhaled Hosny
Currently checks only for ligatures, but that is a big improvement over al code that didn’t do any validation except on Windows. Change-Id: I035248f4ccc23134ea27b40c2dd6197130749f14
2016-10-18Re-enable Kashida insertion in CommonSalLayoutKhaled Hosny
We now do Kashida insertion in ApplyDXArray(), no need for a separate step. This simplifies the code greatly (old code is in GenericSalLayout::KashidaJustify()). Change-Id: Ie31c8969e26f1f293820f1e90f963a5ba1fc9eb1
2016-10-18Fix applying DX adjustments in CommonSalLayoutKhaled Hosny
By overriding GetCharWidths() and ApplyDXArray() with a simpler and saner implementation. This fixes rendering of Awami Nastaliq, as well as subtending marks in Amiri and potentially other bugs. Breaks Kashida justification, will need to rewrite that one as well. Change-Id: I843679e937f2881e77df61f5cbd9516b6df1b3b6
2016-10-18Don’t check glyph class unnecessarilyKhaled Hosny
Don’t call hb_ot_layout_get_glyph_class() unless the glyph advance width is zero, as we really do not use its result otherwise. Change-Id: Id02238abef91b9343931f1886d54d966d7157f25
2016-10-18Cache HarfBuzz fontKhaled Hosny
We now create it only once per physical font, saves us few percents from the all over time spent on layout. Change-Id: I8de582cb20a168c93d72921e539c2477fa97fb54
2016-10-18Always build Graphite everywhereKhaled Hosny
It is no longer an optional feature on any platform. The --enable-graphite stuff is kept as it controls the old Graphite integration code and it should be removed without. Change-Id: Ib4d76bba782a1439f02f93411b22d237a1987ea5
2016-10-18GSoC: Speed up CommonSalLayout by caching hb_faceAkash Jain
Cache hb_face so it is not created again and again. Switch from GDI to DirectWrite on Windows to obtain SFNT table data. Change-Id: I9c532cd72e1f6b57313f3b7d42a6b9b0633eb0ef
2016-10-18GSoC: Move TextOutRenderer definition to winlayout.hxxAkash Jain
Change-Id: I705f92d5ad55d7612c6413436c801de13f5352a6
2016-10-18GSoC: Add Graphite support for CommonSalLayoutAkash Jain
Enable Graphite font rendering in CommonSalLayout through Harfbuzz Change-Id: Ia6a00a1bb6ea1a7bd705ed91d4f4f6cb9803e062
2016-10-18GSoC: Integrate new CommonSalLayout in quartz/ codeAkash Jain
Change-Id: I07a9c956f09be5d43ee58ff0784ba0f81f52cd9a
2016-10-18GSoC: Integrate new CommonSalLayout in win/ codeAkash Jain
Change-Id: Ifeb2fa7ca9e2cd0da1c504d4e770aa0bb1b0b0de
2016-10-18GSoC: Integrate new CommonSalLayout in unx/ codeAkash Jain
Change-Id: I991cb5cbd2adad4f4c9f62f807990b9fde2a5133
2016-10-18GSoC: Modify DrawServerFontLayout and add DrawSalLayoutAkash Jain
Modify the definiton of the DrawServerFontLayout method. Add new DrawSalLayout method which will be used for drawing text independent of the platform. Change-Id: Ie3eefb172b1781c685def1ef549db2538f672a62
2016-10-18GSoC: Add new CommonSalLayout classAkash Jain
Change-Id: Ic11e573da2f5fd6ef931f53ab674f8894815c3b4
2016-10-18GSoC: Move code from winlayout.cxx to winlayout.hxxAkash Jain
WinFontInstance definition moved to winlayout.hxx. It has to be used in the new layout class. Code and headers which WinFontInstance depends on also moved to winlayout.hxx Change-Id: Idc8f87e6601c220d504398671326b1f23d1779a3
2016-10-18GSoC: Move winlayout header file to vcl/inc/winAkash Jain
The winlayout header file will need to be included in the new layout class. Its better to move it to vcl/inc. Change-Id: Ifb4170e1948dc56b5ec1728380eff7c2b4a07137
2016-10-18GSoC: Move scrptrun header and source file out of unxAkash Jain
Scrptrun class will be used by the new layout engine for script itemisation. It will need to be compiled on all platforms. Therefore move the header and source file to vcl/inc/ and vcl/source/gdi/ respectively. Change-Id: If4e1e0e76ffb94f9d0ca08f7d5f9982dd907c1c6
2016-10-18GSoC: Add a generic GetTable function for WinFontFaceAkash Jain
Change-Id: Ia10ffd8c4b5e0cef89571204f5f1df32daa9edb7
2016-10-18Resolves: tdf#98807 gtk3 isn't giving utility windows focusCaolán McNamara
so just give up on that and give them a dialog hint instead Change-Id: Icca0c707dc464b0dbf362988b1dfee56866eadc0
2016-10-18Don't crash on closing gtk3 popup menu without enabled itemsMaxim Monastirsky
This thing: GtkSalMenu::ShowNativePopupMenu Menu::Deactivate MenuItemList::Remove GtkInstance::DestroyMenuItem deletes the SalMenuItem, leaving GtkSalMenu with invalid pointers. Change-Id: I22ff10fc62421a800d808a56625ce7144c8e04b4
2016-10-18Skip the placeholder added by PopupMenu::ImplExecuteMaxim Monastirsky
Change-Id: I7766a63aff240141342db8b4a9236f5930236b13
2016-10-18Resolves: tdf#100251 gtk3 toolbar separators are white in AdwaitaCaolán McNamara
Change-Id: Iceeba474535026cd13393432ef9a2e25121c134a
2016-10-18Resolves: tdf#97065 gtk3: Date field displayed incompleteCaolán McNamara
a spinfield with a dropdown is sort of weird, we should probably revisit this and see if SPIN and DROPDOWN are mutually exclusive and for DROPDOWN use ComboBox styles Change-Id: Id7f5c54974dc2dfd63ab30df18e14f6a67a8ea90
2016-10-18Make 'IsExperimental' property booleanSamuel Mehrbrodt
Change-Id: If88ea931ead8dd031fda9b17d9023a771ab0a0d0 Reviewed-on: https://gerrit.libreoffice.org/29970 Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2016-10-18loplugin:unusedmethodsNoel Grandin
Change-Id: Icf773925c37dde8b7404edac9864e7b10fe113b4 Reviewed-on: https://gerrit.libreoffice.org/29968 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-18-Werror,-Wimplicit-fallthroughTor Lillqvist
Change-Id: I13a6a64f118bcfb99f47cd47a0dc638c5c9a5a14
2016-10-17Resolves: tdf#89760 get correct menubar text color for 'close preview'Caolán McNamara
Change-Id: Ife6f2665eabeefd6125a53318404dbd7b9af42ee
2016-10-17GTK_STYLE_CLASS_LABEL no defined in all versionsCaolán McNamara
Change-Id: I648067e30d5a2e725111b2bc920367ac2d5e0f80
2016-10-17gtk3: split tabitem rendering to a standalone thingCaolán McNamara
Change-Id: I88cd8926b733717c9ea0ecf64a9882eaa777dcfe
2016-10-17gtk3: use theme tab fontCaolán McNamara
Change-Id: I3ea5a9e65e62133c910945e603bdc1155c9a07c3
2016-10-17gtk3: split out gtk->vcl font mapping codeCaolán McNamara
Change-Id: Ic379307ba9e663e0ffc27c945852f6d68197f995
2016-10-17Resolves: tdf#92776 ensure correct notebook tab font colorCaolán McNamara
despite various theme layout differences Change-Id: I209258583571b57b2b7869937fa4821855125eac
2016-10-17GTK_STYLE_CLASS_POPUP not defined in older gtksCaolán McNamara
Change-Id: I6192d13419aab42993e4b6dc011db30a4c3c1787
2016-10-17older gtk3 versions still out there to build againstCaolán McNamara
Change-Id: I64cb12185fc3943a211928e35e756b82942095b0
2016-10-17gtk3: rework theme code to separate old and new theming schemesCaolán McNamara
Change-Id: I7c1341a920c4607937ffab06c182a0ba0e0b26fd
2016-10-17Resolves: tdf#101699 get combobox junction rightCaolán McNamara
gtk3-demo has examples of foreign drawing, follow the patterns there to figure out what to do, add stuff to gtk3-demo to demo what we need to do if any particular case here is lacking Change-Id: Ia1a22280161c97a3eab2d94fc4744fe971d31727
2016-10-17stop warning on older gtk3sCaolán McNamara
Change-Id: I57d0875acdaf3a1a14badb9e08e7c08fd726baea
2016-10-17use released 3.20.0 instead of 3.19.2Caolán McNamara
Change-Id: Iac311e0c326cf79a2dbacb889d39ab49ccaa9325
2016-10-17need 3.19.2 or above for theseCaolán McNamara
Change-Id: If385b45b12c72a0d7460a9a4c9d0b0e3bfc1195e