Léa Saviot
2fdbf2ea11
[poincare] VerticalOffsetLyt serializes as ^().
...
UCodePointLeftSuperscript and UCodePointRightSuperscript no longer exist
2019-06-26 14:03:08 +02:00
Léa Saviot
6109903f66
[poincare/serialization] Use system parentheses to serialize
...
This solves the problem :
(1
--- that serialized as ((1)/(2)), which was valid
2)
2019-06-26 14:03:08 +02:00
Léa Saviot
5a8596acd7
[ion/utf8_helper] Put default parameter in RemovePreviousGlyph
2019-06-21 14:30:14 -04:00
Léa Saviot
5f549b514e
[escher] Fix backspace on utf8 combining code point
2019-06-21 14:30:14 -04:00
Léa Saviot
1043426c40
[ion/utf8] next/previousGlyphPosition methods and tests
2019-06-21 14:30:14 -04:00
Léa Saviot
2061c5d692
[escher/text_area] Fix text indentation handling
...
We used a small buffer to preprocess a text to insert in text area (add
indentation, remove empty code points, compute the next cursor location),
but the size of this buffer was sometimes too small and caused a crash.
Now we do all the text odification in place in the text area buffer.
2019-06-13 11:40:13 -04:00
Léa Saviot
50bbae5e06
[ion/unicode] StringGlyphLength method
2019-06-13 10:37:47 -04:00
Léa Saviot
1d26e6da73
[ion/unicode] Clean special code points
2019-05-03 15:53:21 +02:00
Émilie Feral
15a4072fdc
[ion] Move Storage extensions declaration in Storage class
2019-05-03 15:53:20 +02:00
Émilie Feral
09bc4f27e9
[ion] Add Macro to log the storage content
2019-05-03 15:53:20 +02:00
Léa Saviot
3f0bdc6630
[escher] Fix TextArea::handleEventWithText
...
It did not handle properly a new line (placed the cursor wrongly).
2019-05-03 15:53:20 +02:00
Léa Saviot
5494cea1c7
[unicode] Comment about avoiding accents in literals
2019-05-03 15:53:20 +02:00
Léa Saviot
e338577793
[unicode] Clean decoder use
2019-05-03 15:53:20 +02:00
Léa Saviot
4c5251f04f
[unicode] Use unicode when dealing with chars - Part 2
2019-05-03 15:53:19 +02:00
Léa Saviot
12e1f6be58
[unicode] Fix stop condition of CopyAndRemoveCodePoint
2019-05-03 15:53:19 +02:00
Léa Saviot
7f4ef39d0c
[text_area] Fix Text::Position use with unicode
...
A glyph offset is not equivalent to a code point offset since a code
point can be several glyphs long.
2019-05-03 15:53:19 +02:00
Léa Saviot
94b4cbc8d5
[unicode] Fix python area
2019-05-03 15:53:19 +02:00
Léa Saviot
2f3aa51c8c
[unicode] Use unicode when dealing with chars - Part 1
2019-05-03 15:53:19 +02:00
Léa Saviot
39f6f4f5bb
Remove compilation warnings
2019-05-03 15:53:19 +02:00
Léa Saviot
f9fbcabb30
[escher/ion] Factorize code for removing a code point in text field/area
2019-05-03 15:53:19 +02:00
Léa Saviot
9e06b23bbb
[escher/ion] Standard methods in UTF8Helper used in text_area
...
String manipulations need to be done using an UTF8 decoder, but some
manipulations can be optimized if the code points we manipulate are only
one char long. These optimizations are done inside UTF8Helper methods.
2019-05-03 15:53:19 +02:00
Léa Saviot
e6b61b257b
[unicode] Methods optimized when code points are one char long
2019-05-03 15:53:19 +02:00
Léa Saviot
bbb10f1993
[ion/kandinsky] Move unicode to ion
2019-05-03 15:53:19 +02:00
Léa Saviot
65e5adafac
Remove Ion::Charset
2019-05-03 15:53:19 +02:00
Romain Goyet
9bd4922389
[ion] Define Ion::Keyboard::Key::None
2019-03-08 14:05:23 +01:00
Léa Saviot
a6a2baeb01
[simulator] Process more keyboard event, such as ! ? ;
2019-01-21 12:10:37 +01:00
Léa Saviot
cea413e91d
[apps] Fix Orthonormal setting in graphs
...
It was not perfectly orthormal.
2019-01-10 11:42:02 +01:00
Léa Saviot
de339c44ae
[apps] Handle StorageFunction::m_color unaligned read on emscripten
2018-12-12 17:49:51 +01:00
Léa Saviot
0ecaea0695
[poincare] Fix power serialization
2018-11-26 14:07:42 +01:00
Émilie Feral
0a9437e8dc
[ion] Storage: add a method destroyAllRecords
2018-11-23 12:04:10 +01:00
Léa Saviot
67f940dfd2
[poincare] Fix VerticalOffsetLayout serialization
...
"2^3 !" would be serialized as "2^3*!", which is wrong. It is now serialized
as "2 Ion::Charset::Superscript 3 Ion::Charset::Superscript !" and
parsed correctly.
2018-11-23 12:04:09 +01:00
Léa Saviot
0670057f90
[apps/graph] Destroy variable record with same name when renaming func
2018-11-23 12:04:06 +01:00
Léa Saviot
91d6955ddf
[apps] The apps displays a warning when storage is full
2018-11-23 12:04:04 +01:00
Léa Saviot
9bfaed583d
[apps/escher/ion] Remove Graph memoized models on storage change
2018-11-23 12:04:03 +01:00
Léa Saviot
38f3c5b16d
[ion] Storage delegate gets notified of storage changes
2018-11-23 12:04:03 +01:00
Léa Saviot
933838ff5e
[apps/graph] Rename functions
2018-11-23 12:04:02 +01:00
Léa Saviot
2442627e3c
[apps] Remove attributes from StorageExpressionModel and derivates
2018-11-23 12:04:00 +01:00
Léa Saviot
ac1e79f907
[apps/graph] Display the function's whole name
2018-11-23 12:04:00 +01:00
Léa Saviot
354b6e9c72
[apps] First attempt at bridging Funciton app with the shared storage
2018-11-23 12:04:00 +01:00
Léa Saviot
1830070a95
[ion] Method to destroy all records with given extension in Storage
2018-11-23 12:03:59 +01:00
Léa Saviot
5a5deedb84
[ion] Coding style of static functions in Storage
2018-11-23 12:03:59 +01:00
Léa Saviot
6993d45fe9
[ion] Add crc32 test
2018-11-23 12:03:59 +01:00
Léa Saviot
1fe6881171
[ion] Fix coputation of Record name crc32
2018-11-23 12:03:59 +01:00
Léa Saviot
868f17c1c7
[ion] Add method implementation in Storage
2018-11-23 12:03:58 +01:00
Léa Saviot
52a21198a4
[apps/ion] Use the new storage API
2018-11-23 12:03:58 +01:00
Léa Saviot
11b98bb13e
[ion] Add test on Storage
2018-11-23 12:03:58 +01:00
Léa Saviot
a4868c8b09
[poincare] Ion::Storage handles fullnames and basenames with extensions
2018-11-23 12:03:58 +01:00
Romain Goyet
a3d6d6ddd6
[ion/timing] Cleanup
2018-11-15 16:19:07 +01:00
Romain Goyet
888d6cf7f4
[ion/timing] millis return uint64_t
...
Otherwise we could loop after a month or so
2018-11-15 15:20:12 +01:00
Romain Goyet
07a768ace6
[ion/timing] Use explicit integer types
2018-11-15 15:18:19 +01:00