Léa Saviot
95f859ce80
[apps/sequence] Set sender for sequence toolbox.
...
Change-Id: I3fe78127273083fb4f8f680ea3e6394f99913a12
2018-01-26 11:55:04 +01:00
Léa Saviot
ab8140c1c3
[poincare] Pointer shouldRecomputeLayout mandatory for layout navigation
...
This fixes a bug.
Change-Id: I9bb5ff3a3f365865d85f89efcd970e3ac5096536
2018-01-26 11:36:34 +01:00
Léa Saviot
093131302c
[expression_editor] Delete this app.
...
Change-Id: I4c010ce1948f4c04dff526218d6d85a6d34d109e
2018-01-26 11:07:44 +01:00
Léa Saviot
4b79175fa8
[escher] Handle Clear event in ScrollableExpressionViewWithCursor.
...
Change-Id: I8a71a3f866420cd62514a7431f89a468580ff4eb
2018-01-25 17:31:51 +01:00
Émilie Feral
9443fcb043
[apps] Sequence: in the toolbox, update the extra-cells when updating
...
the hold layout to avoid unvalid read
2018-01-25 15:48:35 +01:00
Émilie Feral
479d86a38e
[apps] Sequence: when setting a next first term index, forbid negative
...
index
2018-01-25 15:48:23 +01:00
Léa Saviot
f38bbff447
[escher] Fix responder order bug.
...
EditableExpressionView cannot pass the first responder state to one of
its children, otherwise Calculation::EditableExpressionView's overriden
handleEvent method is never called.
Change-Id: Id2b56b9501e67431e860573cf4c62a16651c3958
2018-01-24 10:20:09 +01:00
Léa Saviot
b9a7973961
[escher/poincare] Move the cursor when inserting a layout (if wanted).
...
The new pointed layout can be specified. If not, the cursor will be on
the right of the new layout.
Change-Id: I5e0c37cf6365447f8eaf354dc5e86a24c6981034
2018-01-24 10:18:12 +01:00
Léa Saviot
b3c5b93d21
[escher] Fix invalid pointer access.
...
A layout might be deleted after calling addLayout: for instance, if the
layout is horizontal and added as a child to another horizontal layout,
its children are stolen and it is deleted.
Change-Id: Icc2c344dd7878d7df2ec72f014a98dd0d27dc258
2018-01-23 17:13:58 +01:00
Léa Saviot
71263285c5
[poincare] Fixed serialization bug of empty Horizontal layouts.
...
Change-Id: I6a71eb34ae1f734ed86590cadaf086e1c3a1bd44
2018-01-23 16:57:16 +01:00
Jean-Baptiste Boric
56c6c17b57
[escher] Fix Valgrind uninitialized read
2018-01-23 11:36:27 +01:00
Léa Saviot
2929409d3e
[escher] Comment about implementing a split view for InputViewController
...
Change-Id: I46b50bac50f958fad956696a02d334a690b0a2b2
2018-01-23 10:28:02 +01:00
Léa Saviot
bea0d208c1
[escher] ScrollableExpressionViewWithCursor handles Back event.
...
Change-Id: I8d98040e34740b48ee8285e5356ea94cd48f2e98
2018-01-23 10:28:02 +01:00
Léa Saviot
a2c0eaa20b
[apps/escher] Remove textFieldDidAbortEditing const char * argument.
...
Also removed the same argument in scrollableExpressionViewWithCursorDidAbortEditing.
Change-Id: Iadc6b708cfc0fab44b9fd4edb980cb759d41e8d0
2018-01-23 10:28:02 +01:00
Léa Saviot
4d778b5d9f
[apps/escher/poincare] Use 2D Edition in Sequence and Graph apps.
...
EditableExpressionView is renamed ScrollableViewWithCursor.
EditableExpressionView is now a View that displays either a TextField or
a ScrollableViewWithCursor, depending on Poincare::Preferences.
Change-Id: Id44ddcd9a83f5fd17d65753ca4c94c5c7cda9b8a
2018-01-23 10:28:02 +01:00
Léa Saviot
17cbcd0ab5
[apps/Makefile] Put all the apps back.
...
Change-Id: Ic88eee0e64c4b17364a08a4d4e5bb99fd0481914
2018-01-23 10:27:56 +01:00
Émilie Feral
0963254e03
[poincare] Fix confusion between Symbol::hasAnExactRepresentation and Symbol::isApproximative
2018-01-23 10:25:09 +01:00
Émilie Feral
b1bc6c97c6
[poincare] Add tests for Factor
2018-01-23 10:24:52 +01:00
Émilie Feral
45684d439b
[poincare] Arithmetic::PrimeFactorization returns special cases when the
...
factorization fails. factor(integer) can fail and returns Undefined
2018-01-23 10:24:52 +01:00
Émilie Feral
696e89c7ef
[apps] Toolbox: add factor decomposition
2018-01-23 10:24:52 +01:00
Émilie Feral
b9dce68f04
[poincare] Create class Factor
2018-01-23 10:24:52 +01:00
Émilie Feral
856a7b3eb0
[apps] Add random menu in toolbox
2018-01-23 10:24:52 +01:00
Émilie Feral
6401ce19ae
[i18n] Add messages for random menu in toolbox
2018-01-23 10:24:52 +01:00
Émilie Feral
7aca44812e
[ion] Correct random() implementation in simulator, blackbox and
...
emscripten
2018-01-23 10:24:52 +01:00
Émilie Feral
84b52fa090
[poincare] Create class Randint
2018-01-23 10:24:52 +01:00
Émilie Feral
868f53f65c
[poincare] Create class random
2018-01-23 10:24:52 +01:00
Émilie Feral
9323f0a3e2
[poincare] Parse function with no operand
2018-01-23 10:24:52 +01:00
Émilie Feral
dedcb6b472
[poincare] Make the operands in LayoutEngin::writePrefixExpressionTextInBuffer and LayoutEngine::createPrefixLayout optional
2018-01-23 10:24:52 +01:00
Émilie Feral
f3b90cbbd4
[poincare] Fix ParenthesisLayout to make the operand optional
2018-01-23 10:24:52 +01:00
Émilie Feral
90a75a320b
[liba] Add __aeabi_ul2d implementation
2018-01-23 10:24:52 +01:00
Émilie Feral
a8dc17a6cf
[ion] Add TODO on implementations of usleep msleep
2018-01-22 15:32:59 +01:00
Émilie Feral
7993f7e906
[ion] Re-calibrate the delay methods (msleep and usleep) following the
...
increase of performance due to the instruction and data cache
2018-01-22 15:32:59 +01:00
Léa Saviot
e29691e1f1
[apps/sequence] Fix the insertion of sequence terms in text fields.
...
For instance, the serialization of the V_n layout is "v_{n}", which is
what we want to insert in an EditableExpressionView, but not in a Text
Field for which we want "v(n)".
Change-Id: Iab38058d982322891b530b3afd2d303a266643f9
2018-01-19 17:31:37 +01:00
Léa Saviot
64efb45c24
[apps/math_toolbox] Cleaner matrix layout insertion.
...
Change-Id: I5c51eb353ac848334626e6ffcaf71f3b94534b2e
2018-01-19 17:30:47 +01:00
Léa Saviot
251c4d01af
[apps/sequence] Fix math_toolbox wrong functions calls.
...
Change-Id: I0b7871e87ea64ef9fbd008d9fb3e6d4cce2e97ca
2018-01-19 17:04:50 +01:00
Léa Saviot
f3e6b10410
[apps/math_toolbox] Handle const char * when selecting a leaf.
...
Else, there would be a problem with sequence_toolbox, where not all
toolbox leaves are message trees.
Change-Id: Ib4968aad37f6a835b1ea4d77efac2ae1bd19c7ce
2018-01-19 17:04:41 +01:00
Léa Saviot
2cb8956665
[apps/math_toolbox] Remove the pointedPath from ToolboxMessageTree.
...
Change-Id: I2deb6564321da13ea27975216aa949b68298533c
2018-01-19 16:18:55 +01:00
Léa Saviot
a6f93478cd
[poincare] Fix 1/2 3/4 serialization bug.
...
The omitted multiplication fix that serialized "1 2/3 4" into "1*2/3*4"
caused a bug and serialized "1/2 3/4" into "1/2**3/4", as well as
"1^2 3/4" into "1^(2)**3/4".
Change-Id: I59b55a2f13e6eceee68c7e52169c14918391f235
2018-01-19 15:58:07 +01:00
Léa Saviot
7094bcef75
[escher] EditableExpressionView handles Paste events.
...
Change-Id: Ie23fe49a4b300592ffb77c5548305d1c50279dd1
2018-01-19 15:38:49 +01:00
Léa Saviot
511d9e3ada
[poincare] Better handling of grey squares in MatrixLayout.
...
Add/remove grey squares when the cursor enters or leaves the matrix on
modeUp or moveDown.
Recompute the layout if the cursor enters or leaves a matrix: adding or
removing grey squares changes the layout of the expression.
Change-Id: I356f660cbf96883bd5bf1c4bd2cd160a921a29e7
2018-01-19 15:25:50 +01:00
Léa Saviot
865060e2e9
[poincare] Add asserts in removePointedChildAtIndexAndMoveCursor.
...
Change-Id: Ifc49b79f18ad53a96a4675d1c6edad69e1c6258f
2018-01-19 09:58:59 +01:00
Léa Saviot
1ad4e6e744
[escher/poincare] Remove unneeded layout computation.
...
When moving a cursor in an EditableExpressionView, do not recompute the
layout, unless specified otherwise (for instance when entering or
exiting a MatrixLayout).
Change-Id: Ic2471095d6f6a08014a79f1d9d8fb7d39a1a6864
2018-01-18 17:55:16 +01:00
Léa Saviot
440709dace
[poincare] Better comment for isCollapsable in ExpressionLayout.
...
Change-Id: I944ec90a52b3b69e90c7a75163716c885ef256b4
2018-01-18 15:41:24 +01:00
Léa Saviot
5363eac148
[poincare] Fixed function operands order in parser.
...
Change-Id: Ieff07d664827a82bdd6fbdda821a4b61feabd795
2018-01-18 15:41:24 +01:00
Léa Saviot
65666dc35f
[poincare] Fixed vertical offset layout serialization.
...
There was a problem with omitted multiplications: 1^2 3 would be
computed as 1^(2*3).
Change-Id: Ifc4b0e0bd61fad1b752e1415c6dd0cf3b3b1f3a6
2018-01-18 15:41:24 +01:00
Léa Saviot
8ffac8f69f
[poincare] Fixed fraction serialization.
...
There was a problem with omitted multiplications: 1/2 3 would be
computed as 1/(2*3).
Change-Id: Ic8e7ebfaa525c8bbf910d7c93fb7a3ca770a2e44
2018-01-18 15:41:24 +01:00
Léa Saviot
7770f92df8
[poincare] canBeOmittedMultiplicationLeft/RightFactor for layouts.
...
Change-Id: I059226e95cb8d931ee65062965a888f4a06e67db
2018-01-18 15:41:24 +01:00
Léa Saviot
b70cb6dc8a
[poincare/parser] Fix precedence bug in the parser.
...
Change-Id: I02a36ca82729085232166d854d596154a355daae
2018-01-18 15:41:23 +01:00
Léa Saviot
3cda4a881d
[poincare] Fix new power layout bug.
...
There was a problem when assessing if there was a need for an empty base
layout.
Change-Id: I9d6f84d3cc797fc0a701395dd8289590a4ab849a
2018-01-17 15:32:55 +01:00
Léa Saviot
776c4246c6
[poincare] Delete the integral when left of the integrand.
...
And handle the cursor position.
Change-Id: I573a8c7496a3a7b99385e68e8152e491f86cb66c
2018-01-17 14:51:55 +01:00