lyx_mirror/src
Jean-Marc f4fc035cf6 Better algorithm for forcing bidi drawing
The use of RLO/LRO overrides to force text orientation was really hackish and the way it was done caused dropped letters in Mac OS X (for some unknown reasons).

This new approach is much cleaner, except that it relies on features not advertised in documentation
but present at least from Qt 4.5 to Qt 5.3:
* TextFlag enum values TextForceLeftToRight and TextForceRightToLeft, which are strong versions
  of QPainter::setLayoutDirection; they are passed as a parameter of QPainter::drawText.

* QTextLayout::setFlags method, which is required to pass the above flags to QTextLayout.

The unicode override method is still used to draw strings Mac OS X because, for some reason, the direction was not really enforced in this case.
2014-07-25 19:56:51 +02:00
..
client Cmake build: Symplify use of linking optional libraries found via find_package 2014-06-12 19:02:29 +02:00
frontends Better algorithm for forcing bidi drawing 2014-07-25 19:56:51 +02:00
graphics Remove unsafe method FileName::tempName() 2014-06-09 13:05:50 +02:00
insets Small Inset isXXX methods cleanup 2014-06-25 17:54:26 +02:00
mathed Remove unsafe method FileName::tempName() 2014-06-09 13:05:50 +02:00
support Better algorithm for forcing bidi drawing 2014-07-25 19:56:51 +02:00
tests Cmake build: Symplify use of linking optional libraries found via find_package 2014-06-12 19:02:29 +02:00
tex2lyx Cmake build: Symplify use of linking optional libraries found via find_package 2014-06-12 19:02:29 +02:00
.gitignore Setup .gitignore for generated files 2012-03-22 02:16:12 +01:00
AppleSpellChecker.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
AppleSpellChecker.h Remove ; from end of function definitions 2013-05-12 13:04:18 +02:00
AspellChecker.cpp #8932 improved spell checker debug messages 2014-01-15 21:20:05 +01:00
AspellChecker.h Remove ; from end of function definitions 2013-05-12 13:04:18 +02:00
Author.cpp Accidentally overwrote this commit of Vincent's. 2014-03-15 12:09:35 -04:00
Author.h Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
BiblioInfo.cpp Add a FIXME. 2014-05-23 11:36:12 -04:00
BiblioInfo.h Fix bug #9131 for development branch. There are two parts to the fix. 2014-05-23 11:26:45 -04:00
Bidi.cpp Get rid of rtl_support preference 2014-07-09 21:11:08 +02:00
Bidi.h Document the Bidi class a bit 2013-06-28 15:18:17 +02:00
boost.cpp
Box.cpp
Box.h
BranchList.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
BranchList.h
buffer_funcs.cpp This is the result of an audit of all static variables, looking 2014-04-21 11:51:57 -04:00
buffer_funcs.h #7789 unify and fix buffer statistics 2012-01-12 07:03:24 +00:00
Buffer.cpp Fix wrong "externally modified" message 2014-06-09 13:17:40 +02:00
Buffer.h Include child's own authors when using BufferParams from master. 2014-03-13 06:43:38 +01:00
BufferEncodings.cpp Encodings: Make members of CharInfo private 2013-09-29 15:26:20 +02:00
BufferEncodings.h Encodings: Split off the functions that need Buffer 2013-09-29 15:26:18 +02:00
BufferList.cpp This is the result of an audit of all static variables, looking 2014-04-21 11:51:57 -04:00
BufferList.h New function BufferList::newInternalBuffer 2012-05-12 14:36:13 +02:00
BufferParams.cpp Fix various warnings issued by clang++. 2014-04-22 00:04:04 +02:00
BufferParams.h Typos and style. 2014-04-21 11:51:59 -04:00
BufferView.cpp Get rid of rtl_support preference 2014-07-09 21:11:08 +02:00
BufferView.h Slowly going through the suggestion made by our headers script. 2013-05-15 22:02:10 -07:00
Bullet.cpp Audit all the LASSERT calls, and try to do something sensible at 2013-04-25 17:27:10 -04:00
Bullet.h
Changes.cpp Typos and style. 2014-04-21 11:51:59 -04:00
Changes.h Add a member to TocItem that tells us whether the item in question 2013-03-08 16:38:18 -05:00
Chktex.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
Chktex.h
Citation.h New \cite_engine_type default. 2013-05-16 20:39:23 +02:00
CMakeLists.txt Cmake build: Symplify use of linking optional libraries found via find_package 2014-06-12 19:02:29 +02:00
CmdDef.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
CmdDef.h
Color.cpp Audit all the LASSERT calls, and try to do something sensible at 2013-04-25 17:27:10 -04:00
Color.h
ColorCode.h ColorCode.h: clarify a comment 2012-12-31 04:10:28 +01:00
ColorSet.h
Compare.cpp Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
Compare.h Slowly going through the suggestion made by our headers script. 2013-05-15 22:02:10 -07:00
CompletionList.h
Converter.cpp Centralize replacement of "$$s" 2014-05-14 15:45:20 -04:00
Converter.h Remove unused typedef 2013-03-24 18:06:31 +01:00
ConverterCache.cpp Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
ConverterCache.h
CoordCache.cpp Move code where it belongs 2014-05-19 22:07:04 +02:00
CoordCache.h Slowly going through the suggestion made by our headers script. 2013-05-15 22:02:10 -07:00
Counters.cpp Initialize variable to fix Counter 0 problem 2014-04-01 21:41:13 +02:00
Counters.h Fix caption counter in longtables (see #8993). 2014-02-25 08:00:43 +01:00
Cursor.cpp Remove debug code from TextMetrics 2014-07-08 21:29:52 +02:00
Cursor.h Add introduction to cursor related classes, written by JMarc. 2013-07-01 09:52:06 -07:00
CursorSlice.cpp Remove all messages to user related to assertions. We'll just use 2013-04-27 17:52:55 -04:00
CursorSlice.h
CutAndPaste.cpp Remove unsafe method FileName::tempName() 2014-06-09 13:05:50 +02:00
CutAndPaste.h Fix image pasting regression 2013-07-13 22:44:20 +02:00
DepTable.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
DepTable.h
Dimension.cpp Move code where it belongs 2014-05-19 22:07:04 +02:00
Dimension.h
DispatchResult.h Rename a routine. 2014-02-18 10:42:52 -05:00
DocIterator.cpp Fix typo 2013-12-15 12:19:12 +01:00
DocIterator.h std::min/max are defined in <algorithm> 2014-06-07 08:17:20 +02:00
DocumentClassPtr.h Deal with memory issue reported some time ago in connection with DocumentClass 2012-05-31 12:34:29 -04:00
EnchantChecker.cpp #8849 catch exception in enchant speller backend and avoid multiple speller lookups for missing dictionaries 2014-05-18 10:43:32 +02:00
EnchantChecker.h Remove ; from end of function definitions 2013-05-12 13:04:18 +02:00
Encoding.cpp Remove obsolete code to handle Hebrew and Arabic characters 2014-07-08 21:30:06 +02:00
Encoding.h Remove obsolete code to handle Hebrew and Arabic characters 2014-07-08 21:30:06 +02:00
ErrorList.cpp
ErrorList.h Remove ; from end of function definitions 2013-05-12 13:04:18 +02:00
Exporter.cpp Added -E option to specify export format and destination file-name (and export folder). 2011-09-15 01:07:49 +00:00
Exporter.h Added -E option to specify export format and destination file-name (and export folder). 2011-09-15 01:07:49 +00:00
factory.cpp Fix bugs #8546 and #9055, and introduce new separator inset. 2014-05-10 23:25:11 +02:00
factory.h
Floating.cpp Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
Floating.h Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
FloatList.cpp This is the result of an audit of all static variables, looking 2014-04-21 11:51:57 -04:00
FloatList.h
Font.cpp ulem commands can be nested. 2014-04-21 11:51:58 -04:00
Font.h Slowly going through the suggestion made by our headers script. 2013-05-15 22:02:10 -07:00
FontEnums.h Add support for stmaryrd.sty (bug #8434) 2012-12-15 13:10:31 +01:00
FontInfo.cpp Implement writing of layouts 2013-03-31 15:33:26 +02:00
FontInfo.h Implement writing of layouts 2013-03-31 15:33:26 +02:00
FontList.cpp This is the result of an audit of all static variables, looking 2014-04-21 11:51:57 -04:00
FontList.h This is the result of an audit of all static variables, looking 2014-04-21 11:51:57 -04:00
Format.cpp Make binary file detection more robust. 2014-06-11 23:04:39 +02:00
Format.h remove unused and error-prone function 2013-09-15 17:19:51 +02:00
FuncCode.h Fix bugs #8546 and #9055, and introduce new separator inset. 2014-05-10 23:25:11 +02:00
FuncRequest.cpp Handle sending a FuncRequest object to lyxerr 2012-06-07 17:21:49 +02:00
FuncRequest.h Handle sending a FuncRequest object to lyxerr 2012-06-07 17:21:49 +02:00
FuncStatus.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
FuncStatus.h
Graph.cpp
Graph.h
HSpace.cpp Audit all the LASSERT calls, and try to do something sensible at 2013-04-25 17:27:10 -04:00
HSpace.h
HunspellChecker.cpp #8932 improved spell checker debug messages 2014-01-15 21:20:05 +01:00
HunspellChecker.h Implement access to hunspell's stemming function and let the Thesaurus use that (part of bug #8060). 2012-03-02 10:20:09 +00:00
IndicesList.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
IndicesList.h Typos 2012-06-05 12:22:13 +02:00
InsetIterator.cpp
InsetIterator.h
InsetList.cpp
InsetList.h
Intl.cpp
Intl.h
KeyMap.cpp Remove unsafe method FileName::tempName() 2014-06-09 13:05:50 +02:00
KeyMap.h
KeySequence.cpp Use empty() to check empty and non-empty'ness not size() 2012-10-27 01:25:38 +02:00
KeySequence.h
Language.cpp Fix most important case of bug #8205 2013-03-31 23:48:05 +02:00
Language.h Fix most important case of bug #8205 2013-03-31 23:48:05 +02:00
LaTeX.cpp This is the result of an audit of all static variables, looking 2014-04-21 11:51:57 -04:00
LaTeX.h Typo. Sorry. 2014-04-09 11:29:40 +02:00
LaTeXFeatures.cpp This is the result of an audit of all static variables, looking 2014-04-21 11:51:57 -04:00
LaTeXFeatures.h Load babel with English-only documents (bug 8423) 2012-12-23 11:34:38 +01:00
LaTeXFonts.cpp Load AMS packages before newtxmath (#8824) 2013-09-01 10:21:21 +02:00
LaTeXFonts.h Load AMS packages before newtxmath (#8824) 2013-09-01 10:21:21 +02:00
LaTeXPackages.cpp Fix bug #4213: Change tracking support for tex2lyx. 2011-11-06 17:03:59 +00:00
LaTeXPackages.h Fix bug #4213: Change tracking support for tex2lyx. 2011-11-06 17:03:59 +00:00
Layout.cpp Add layout tag that determines if/when a paragraph can be indented. 2014-05-29 14:10:32 +02:00
Layout.h Add layout tag that determines if/when a paragraph can be indented. 2014-05-29 14:10:32 +02:00
LayoutEnums.h Add layout tag that determines if/when a paragraph can be indented. 2014-05-29 14:10:32 +02:00
LayoutFile.cpp Remove unsafe method FileName::tempName() 2014-06-09 13:05:50 +02:00
LayoutFile.h Remove ; from end of function definitions 2013-05-12 13:04:18 +02:00
LayoutModuleList.cpp Import theorems correctly (bugs #5702, #5776) 2012-10-26 22:23:16 +02:00
LayoutModuleList.h Import theorems correctly (bugs #5702, #5776) 2012-10-26 22:23:16 +02:00
Length.cpp Fix empty width support for Box inset 2013-05-24 15:44:59 +02:00
Length.h
lengthcommon.cpp Improve support for empty lengths 2013-05-24 15:44:58 +02:00
Lexer.cpp Initialize all members 2014-05-19 22:41:51 +02:00
Lexer.h clang: std::string is used here, fwd is not enough 2011-12-07 16:03:37 +00:00
LyX.cpp On Linux show in crash message box the backtrace 2014-06-14 11:25:25 +02:00
LyX.h WS cleanup, remove extraeneous spaces 2012-10-27 01:25:38 +02:00
LyXAction.cpp Fix bugs #8546 and #9055, and introduce new separator inset. 2014-05-10 23:25:11 +02:00
LyXAction.h Bump LFUN format for LyX 2.1 2012-09-29 20:06:39 +02:00
lyxfind.cpp Fix crash when accepting change 2014-06-05 12:23:19 +02:00
lyxfind.h Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
LyXRC.cpp Get rid of rtl_support preference 2014-07-09 21:11:08 +02:00
LyXRC.h Get rid of rtl_support preference 2014-07-09 21:11:08 +02:00
LyXVC.cpp Remove unsafe method FileName::tempName() 2014-06-09 13:05:50 +02:00
LyXVC.h Fix monolithic build 2013-03-18 20:42:28 +01:00
lyxwinres.rc
main.cpp
Makefile.am Fix bugs #8546 and #9055, and introduce new separator inset. 2014-05-10 23:25:11 +02:00
MetricsInfo.cpp
MetricsInfo.h Slowly going through the suggestion made by our headers script. 2013-05-15 22:02:10 -07:00
ModuleList.cpp Remove dependency on TEX2LYX #define in ModuleList.cpp 2013-09-29 15:26:12 +02:00
ModuleList.h Remove some header leftovers based on Scott's script hints. 2013-05-02 00:30:16 -07:00
Mover.cpp Centralize replacement of "$$s" 2014-05-14 15:45:20 -04:00
Mover.h
output_docbook.cpp Audit all the LASSERT calls, and try to do something sensible at 2013-04-25 17:27:10 -04:00
output_docbook.h
output_latex.cpp Fix indentation of paragraphs after an environment. 2014-05-28 01:07:47 +02:00
output_latex.h Header cleanup cont. 2013-05-25 16:38:20 -07:00
output_plaintext.cpp Introduce max_length parameter for plaintext() output routines, 2013-03-08 15:12:58 -05:00
output_plaintext.h Introduce max_length parameter for plaintext() output routines, 2013-03-08 15:12:58 -05:00
output_xhtml.cpp Fix various warnings issued by clang++. 2014-04-22 00:04:04 +02:00
output_xhtml.h struct with virtual functions should have virtual destructor 2014-04-30 23:14:41 +02:00
output.cpp
output.h
OutputEnums.h
OutputParams.cpp Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
OutputParams.h ulem commands can be nested. 2014-04-21 11:51:58 -04:00
paper.h
Paragraph.cpp Get rid of rtl_support preference 2014-07-09 21:11:08 +02:00
Paragraph.h Remove obsolete code to handle Hebrew and Arabic characters 2014-07-08 21:30:06 +02:00
ParagraphList.h
ParagraphMetrics.cpp Remove obsolete code to handle Hebrew and Arabic characters 2014-07-08 21:30:06 +02:00
ParagraphMetrics.h Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
ParagraphParameters.cpp
ParagraphParameters.h
ParIterator.cpp
ParIterator.h Remove some header leftovers based on Scott's script hints. 2013-05-02 00:30:16 -07:00
pch.h
PDFOptions.cpp Extend the notermination flag to math as well. 2012-03-25 15:57:38 +02:00
PDFOptions.h
PersonalWordList.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
PersonalWordList.h Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
PrinterParams.cpp Audit all the LASSERT calls, and try to do something sensible at 2013-04-25 17:27:10 -04:00
PrinterParams.h
Row.cpp Fix breaking of loooong word in RTL languages 2014-07-08 21:30:05 +02:00
Row.h Move some text from the readme file to relevant source files 2014-07-08 21:30:06 +02:00
rowpainter.cpp Revert optimization where several words are drawn at the same time 2014-07-20 18:54:31 +02:00
rowpainter.h Move some text from the readme file to relevant source files 2014-07-08 21:30:06 +02:00
Server.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
Server.h
ServerSocket.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
ServerSocket.h Header cleanup cont. 2013-05-19 18:07:53 -07:00
Session.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
Session.h
sgml.cpp This is the result of an audit of all static variables, looking 2014-04-21 11:51:57 -04:00
sgml.h Header cleanup cont. 2013-05-25 16:38:20 -07:00
Spacing.cpp
Spacing.h
SpellChecker.h Implement access to hunspell's stemming function and let the Thesaurus use that (part of bug #8060). 2012-03-02 10:20:09 +00:00
TexRow.cpp
TexRow.h
Text2.cpp Fix bugs #8546 and #9055, and introduce new separator inset. 2014-05-10 23:25:11 +02:00
Text3.cpp Select word on double click even when at boundary 2014-06-13 10:48:49 -04:00
Text.cpp Ugly fix for bug #9102 2014-05-19 21:40:11 +02:00
Text.h Whitespace fixes 2014-04-29 22:06:02 +02:00
TextClass.cpp Remove unsafe method FileName::tempName() 2014-06-09 13:05:50 +02:00
TextClass.h Do not issue module warnings when just cloning a buffer (#8864) 2014-02-09 11:16:20 +01:00
TextMetrics.cpp Revert optimization where several words are drawn at the same time 2014-07-20 18:54:31 +02:00
TextMetrics.h Remove debug code from TextMetrics 2014-07-08 21:29:52 +02:00
Thesaurus.cpp src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
Thesaurus.h Remove some header leftovers based on Scott's script hints. 2013-05-02 00:30:16 -07:00
TocBackend.cpp Audit all the LASSERT calls, and try to do something sensible at 2013-04-25 17:27:10 -04:00
TocBackend.h whitespace 2014-02-24 16:40:57 +01:00
Trans.cpp
Trans.h
Undo.cpp Respect group integrity when removing stuff from the Undo stack. 2014-04-20 19:01:07 +02:00
Undo.h Fix bug #5204: Undo removes text selection 2012-07-15 18:16:09 +02:00
update_flags.h
VCBackend.cpp Remove unsafe method FileName::tempName() 2014-06-09 13:05:50 +02:00
VCBackend.h Make parameter more readable. 2013-04-13 21:56:52 -07:00
version.cpp Cmake build: 2012-10-15 22:50:39 +02:00
version.h Native support for \notag 2014-05-27 22:17:35 +02:00
VSpace.cpp Audit all the LASSERT calls, and try to do something sensible at 2013-04-25 17:27:10 -04:00
VSpace.h
WordLangTuple.h
WordList.cpp Do not store Languages objects in completion words lists 2014-04-21 11:51:59 -04:00
WordList.h Do not store Languages objects in completion words lists 2014-04-21 11:51:59 -04:00