Commit Graph

7457 Commits

Author SHA1 Message Date
Léa Saviot
3faee8bcd8 [python/turtle] Special case when goTo draws horizontal/vertical line 2019-02-06 11:45:03 +01:00
Léa Saviot
b5e278526f [python/turtle] Use namespace std 2019-02-06 11:45:03 +01:00
Léa Saviot
287dedabc0 [python/turtle] The turtle heading is in [0;360[ 2019-02-06 11:45:03 +01:00
Léa Saviot
a25b2a8ce5 [python/turtle] Fix unwanted dotted lines
Script:
fd(200)
left(90)
fd(10)
left(90)
fd(600)
The final line should be continuous but is dotted
2019-02-06 11:45:03 +01:00
Léa Saviot
a021af46fe [apps/code] Hide the sandbox between script importations 2019-02-06 11:45:03 +01:00
Léa Saviot
4a8c0a6bd0 [apps/code] Do not change the responders in autoImportScript if sandbox
This fixes the following scenario: create a script that draws at
importation (for instance, add "squares()" at the end of squares.py) and
execute this script. The sandbox is displayed but events are handled by
the underneath text field, thus leading to the display of the variable
box and other bugs.
2019-02-06 11:45:03 +01:00
Émilie Feral
535dee8220 [poincare] Integer: add TODO 2019-02-05 16:42:36 +01:00
Émilie Feral
2b19a02b6a [poincare] Integer: avoid easy stack overflow by using static working
buffer for integer operations
2019-02-05 16:42:36 +01:00
Émilie Feral
02b27124f4 [poincare] Integer: remove duplicate method: isInfinite is equivalent to
isOverflow
2019-02-05 16:42:36 +01:00
Émilie Feral
f4d63a2160 [poincare] Integer are allocated on the TreePool instead of using their
own buffer. Short Integers are kept in the handle as an optimization.
2019-02-05 16:42:36 +01:00
Émilie Feral
79f0834f4e [poincare] Add method 'hasNode' on TreeHandle 2019-02-05 16:42:36 +01:00
Émilie Feral
4f3bd12fea [poincare] Fix bug: undef*x--> undef 2019-02-05 16:42:24 +01:00
Émilie Feral
e9b11d5bf7 [poincare] Power: fix rule x^0 and 1^x with x infinity 2019-02-01 10:40:03 +01:00
Émilie Feral
3caf165621 [poincare] Factorize code in method:
Expression::recursivelyMatchesInfinity
2019-02-01 10:40:03 +01:00
Émilie Feral
8855390f91 [poincare] Logarithm: add rule on log(inf) 2019-02-01 10:40:03 +01:00
Émilie Feral
3226426a55 [poincare] Fix Logarithm with Infinite arguments 2019-02-01 10:40:03 +01:00
Émilie Feral
b58573bad3 [poincare] Multiplication: do not apply rule 0*x --> 0 if x involves an
infinite expression
2019-02-01 10:40:03 +01:00
Émilie Feral
66fe9baa7d [ion] Storage: clean implementation (do not re-code strlen) 2019-01-23 16:14:34 +01:00
Léa Saviot
a7208ade0f [apps] Container::switchTo returns a bool (false if could not switch) 2019-01-22 14:57:51 +01:00
Léa Saviot
4128ebb864 [escher] In container, check the app can be exited before switching apps 2019-01-22 14:57:51 +01:00
Émilie Feral
476c42c42e [poincare] Store: shallowReducing and approximating a store do the same
thing: storing the expression for the corresponding symbol
2019-01-22 14:57:38 +01:00
Émilie Feral
fd2eb95ae7 [poincare] Fix tests on user variables 2019-01-22 14:57:38 +01:00
Émilie Feral
5abb05e7bc [poincare] Store: implementation of deepReduceChildren should
recursively test that the children are not matrix (or enable the
interruption flag)
2019-01-22 14:57:38 +01:00
Émilie Feral
21fcc84df0 [poincare/parsing] Avoid invalid read (valgrind) 2019-01-22 14:57:17 +01:00
Léa Saviot
7558d08770 [poincarE] Fix compilation warning 2019-01-22 09:39:25 +01:00
Léa Saviot
b97873473b [poincare] Clearer variable names in Gauss-Kronrod algorithm 2019-01-21 17:56:49 +01:00
Léa Saviot
0a5290d5a6 [apps/code] Fix MenuController::willExitResponderChain
It called textFieldDidAbortEditing, which called setFirstResponder,
which could clash with another setFirstResponder higher in the call
tree.

Scenario: build with an update popup, create a new script, edit its name
with an unvalid name and press the Power key while editing. When
powering on the device again, the first responder is not the popup even
though it is displayed, and pressing OK does not dismiss it.
2019-01-21 14:23:50 +01:00
Léa Saviot
c7a585cae8 [micropython] Fix GC bug 2019-01-21 14:23:38 +01:00
Léa Saviot
fdc02ee5e1 [python/port] Fix size of gc collection 2019-01-21 14:23:38 +01:00
Léa Saviot
835c112f2f [python/port] Clean gc_collect 2019-01-21 14:23:38 +01:00
Léa Saviot
5e714c371c [python/turtle] Increase chances that GC collection works fine on turtle 2019-01-21 14:23:38 +01:00
Léa Saviot
48bf209f48 [apps/curve_view] Fix zero label position
For instance, in Probability app, draw a standard normal law. The zero
was top left of the screen...
2019-01-21 14:23:26 +01:00
Émilie Feral
f8f4705929 [poincare] AbsoluteValue: fix shallowReduce to reduce abs(0) to 0 2019-01-21 13:40:17 +01:00
Léa Saviot
1b78f03219 [apps/code] Comment the non support for upper cases in script names 2019-01-21 13:39:59 +01:00
Léa Saviot
f392ca8063 [apps/code] More details in NonCompliantName warning 2019-01-21 13:39:59 +01:00
Léa Saviot
1994e716bf [i18n] Change Message name 2019-01-21 13:39:59 +01:00
Léa Saviot
282feac8a1 [apps/code] Do not allow script names starting with a number. 2019-01-21 13:39:59 +01:00
Léa Saviot
2bde26af69 [python/turtle] Specify namespace std when using cos, sin 2019-01-21 13:39:47 +01:00
Léa Saviot
2f9f40f1a7 [python/turtle] Store the heading in degrees with no k_headingOffset
This reduces rouding errors, such as:
setHeading(0)
right(1)
heading() -> gives -1.00...01
2019-01-21 13:39:47 +01:00
Émilie Feral
6948de2ad3 [poincare] ComplexCartesian: fix approximation
The assertions that the real and imaginary parts are real can be false
due to double lack of precision. We escape these cases by returning an
undefined approximation.
2019-01-21 13:39:36 +01:00
Émilie Feral
8f0246b9d6 [build/device] Remove duplicate line in gdb script 2019-01-21 13:39:05 +01:00
Émilie Feral
8cbbd92761 [ion/device] Fix keyboard output GPIO activation 2019-01-21 13:39:05 +01:00
Léa Saviot
15c87dc0b3 [simulator] Comment 3 keyboard events that are not working 2019-01-21 12:10:37 +01:00
Léa Saviot
a6a2baeb01 [simulator] Process more keyboard event, such as ! ? ; 2019-01-21 12:10:37 +01:00
Léa Saviot
caa0795713 [simulator] Coding style 2019-01-21 12:10:37 +01:00
Léa Saviot
5e2ea6ee32 [simulator] Process letter keyboard events 2019-01-21 12:10:37 +01:00
Léa Saviot
d189a60eff [simulator] Fix left parenthesis
Would send a '5' before
2019-01-21 12:10:37 +01:00
Léa Saviot
31866aaaf5 [apps/calculation] Fix display of unreal
For instance ln(-2) in real mode should display "unreal"
2019-01-21 11:59:20 +01:00
Léa Saviot
86f03b800d [poincare] Clean the TrigonometryCheatTable
It caused Travis compilation problems
2019-01-21 11:22:55 +01:00
Léa Saviot
0bf3e678d9 [poincare] Add tests and asserts about sign, such as sign(0)==0 2019-01-21 11:22:55 +01:00