Quentin Guidée
df67332880
Fix telemetry
2020-02-17 20:21:42 +01:00
Quentin Guidée
2ae5eecac7
Fix infinite loop
2020-02-17 19:05:18 +01:00
Quentin Guidée
5b2f33c80a
Fix conflicts
2020-02-17 17:10:32 +01:00
Romain Goyet
553eaaeac0
[ion] Fix telemetry on iOS and Android
2020-02-17 10:31:24 -05:00
Romain Goyet
670490e642
[ion] Add a telemetry API
2020-02-17 10:31:24 -05:00
Romain Goyet
aa0dbee303
[ion] Console::writeLine can ommit trailing CR/LF
2020-02-17 10:31:24 -05:00
Quentin Guidée
fac5b0c416
ExamMode types
2020-02-16 20:22:05 +01:00
Quentin Guidée
83ea330220
Fix n0110
2020-02-16 18:50:40 +01:00
Quentin Guidée
ab8f731515
Fixed some conflicts
2020-02-12 17:42:58 +01:00
Léa Saviot
b8f65442db
[ion/simulator] Keyboard shift + left/right/up/down now works
2020-02-12 15:13:25 +01:00
Émilie Feral
0c55ea4531
[ion] unicode: UTF8Helper::CopyAndRemoveCodePoints returns a boolean
...
which is true if the whole source was copied
2020-02-12 15:13:24 +01:00
Léa Saviot
ae3fa46191
[escher/text_field] Fix handling of \n
...
The buffer length did not take into account the \n removal. In fact, we
could just remove the \n while also removing the empty code points,
which is what we do now.
2020-02-12 15:13:24 +01:00
Léa Saviot
b29d014695
[escher/text_field] Fix removing of \n in insertTextAtLocation
...
Scenario: Copy a text with \n (for instance from a script), then paste
it in a script name -> if \n are replaed with \0 instead of just being
removed, there are problems with the extension
2020-02-12 15:13:23 +01:00
Ruben Dashyan
9b0b4e3096
[ion/unicode] Define and use CodePoint const methods
...
isLowerCaseLetter
isUpperCaseLetter
isLetter
isDigit
Remove similar ones from UTF8Helper and from Poincare::Tokenizer.
2020-02-12 15:13:23 +01:00
Léa Saviot
244c7b31eb
[ion/web] Fix screenshots
2020-02-12 15:13:23 +01:00
Léa Saviot
9d6bab092f
[poincare/parser] Identifier is not already function -> symbol
...
We check the context: if an identifier is already a function, we
interpret it as such, otherwise it is a symbol.
This way, in the Equation app, x(x+1) is interpreted as x*(x+1)
2020-02-12 15:13:21 +01:00
Émilie Feral
a1b2cbb0a9
[ion] Unicode: clean warning
2020-02-12 15:13:19 +01:00
Émilie Feral
b33a778ccb
[ion] N0110 linker script: fix symbol name of section
...
internal_to_external
2020-02-12 15:13:18 +01:00
Léa Saviot
c03c9086b8
[ion/utf8_helper] Add FIXME comment
2020-02-12 15:13:18 +01:00
Léa Saviot
961ba10122
[ion/events] shift+Left/Right/Up/Down can be repeated
2020-02-12 15:13:17 +01:00
Léa Saviot
ab48f8d879
[ion/events] if shift/alpha pressed, it is active
...
No need to press shift between ezach event -> one long shift press keeps
it active
2020-02-12 15:13:17 +01:00
Léa Saviot
bb69b2c131
[ion/events_modifier] Reindent
2020-02-12 15:13:17 +01:00
Léa Saviot
4ffcace024
[ion/storage] Add TODO about code optimization
2020-02-12 15:13:16 +01:00
Léa Saviot
5853e96947
[apps/code] Remove EditorController::m_areaBuffer
...
This was a very large buffer that took a lot of RAM space (the size of
the storage). Instead of having it, we just move the available space of
the storage at the end of the edited script, and move it back when the
edition finishes.
This is slower but saves a lot of space.
2020-02-12 15:13:16 +01:00
Léa Saviot
b9bc9008ac
[ion] Detect long repeated events
...
This will be use for instance to sroll faster if the user presses the
directional keys for a long time
2020-02-12 15:13:15 +01:00
Léa Saviot
973c2149d4
[ion/battery] Battery level has some hysteresis
...
This prevents a blinking battery pictogra wwhen the battery level is at
the limit between two states.
2020-02-12 15:13:15 +01:00
Léa Saviot
78eea601c7
[ion/device] Prevent the user from leaving DFU during software download
...
We prevent the use of the Back key to leave DFU after a flash erase
operation. This way, we prevent the user from interrupting a software
download. After every software download, the calculator resets, which
unlocks the "exit on pressing back"
2020-02-12 15:13:15 +01:00
Quentin Guidée
5e95afe9e4
Merge remote-tracking branch 'upstream/master' into omega-dev
2020-01-27 23:31:17 +01:00
Émilie Feral
de603befc5
[ion] main_sdl: Update the static sNeedsRefresh when actually refreshing the
...
screen
2020-01-13 15:44:44 +01:00
M4x1m3
61f214bcb2
Fixed apps dependency in ion.
2020-01-11 17:33:13 +01:00
Quentin Guidée
a44fceb297
Merge remote-tracking branch 'upstream/master' into omega-dev
2020-01-07 16:35:38 +01:00
Léa Saviot
f1f4e43159
[ion/console] Default ion sources have console_stdio, not _display
2020-01-07 13:50:02 +01:00
Léa Saviot
57ceda5ac0
[bench] USBPlugged command
2020-01-06 14:31:37 +01:00
M4x1m3
ba15b793cd
[simulator] changed apps id
2019-12-29 20:35:37 +01:00
M4x1m3
9a9ae068ef
Reworked exam mode, fixed #106
2019-12-27 16:48:45 +01:00
Quentin Guidée
160adf6bab
Fix compilation errors on n0110
2019-12-25 14:40:57 +01:00
Quentin Guidée
85c98cefe5
Fix conflicts
2019-12-24 17:33:32 +01:00
redgl0w
f838d31ec1
Update events_modifier.cpp
2019-12-24 09:21:14 +01:00
Quentin Guidée
a159d80b1c
Resolved conflicts
2019-12-24 01:07:22 +01:00
Émilie Feral
588c05f6b4
[ion] Reset: Add memory barriers before/after calling for a core reset:
2019-12-23 11:52:00 +01:00
Émilie Feral
9fca8e8b8b
[ion] Reset: factorize cache disabling
2019-12-23 11:52:00 +01:00
Émilie Feral
7b7447b110
[ion] N0110 cache: clean isb/dsb calls
2019-12-23 11:52:00 +01:00
Romain Goyet
5b00192b67
[ion/device] Remove ad-hoc compiler optimizations
...
Since we hand-specify which regs/regs.h functions shoudl be inlined, we
don't need to depend on specific compiler optimization levels.
2019-12-20 09:41:43 +01:00
Romain Goyet
d0660b6543
[ion/device] Force inlining compile-time bit ranges
...
Most of the time register operations can be optimized to a single
assembly instruction. That being said, aggressive -Os optimization can
lead the compiler to think that factorizing calls to setBitRange is a
good idea.
But we really want register operations to be inlined (and therefore
optimized as a single instruction), so we enforce inlining setBitRange
and REGS_FIELD macros.
2019-12-20 09:41:43 +01:00
Romain Goyet
ae8c111da5
[ion] Prevent duplicating SFLAGS
...
Using $(sort) in the Makefile has the side effect of removing duplicates
2019-12-20 09:41:43 +01:00
Émilie Feral
0254266803
[ion] ExamMode: add comment
2019-12-19 15:52:45 +01:00
Émilie Feral
3454265d7e
[ion] ExamMode: change firstOneBitInByte name to
...
numberOfBitsAfterLeadingZeroes and add comment
2019-12-19 15:52:45 +01:00
Émilie Feral
73673384ae
[ion] Avoid unclear, over-optimized computation in modulo 3
2019-12-19 15:52:45 +01:00
Émilie Feral
96c63bd4a5
[apps][ion] Yellow LED is equivalent to Dutch exam mode, do not update
...
the LED color (with plugging/charging events) if the displayed color was Red or Yellow
2019-12-19 15:52:45 +01:00
Émilie Feral
9d154e4e97
[ion] Exam mode: add assertion
2019-12-19 15:52:45 +01:00