Quentin Guidée
5b2f33c80a
Fix conflicts
2020-02-17 17:10:32 +01:00
Romain Goyet
a187f39094
[apps] Report telemetry events
2020-02-17 10:31:24 -05:00
Romain Goyet
5dee4a8166
[apps] Add screen telemetry identification
2020-02-17 10:31:24 -05:00
Romain Goyet
7f43b73049
[apps] Don't forget to call viewWillAppear
...
At the moment ViewController::viewWillAppear doesn't do anything, so
there is no real impact. But if we want to use it it needs to be called
from subclasses.
2020-02-17 10:31:24 -05:00
Quentin Guidée
9de231ba64
[WIP] Fix settings
2020-02-16 13:14:41 +01:00
Quentin Guidée
30386e53f6
Fixed some errors with E13
2020-02-12 23:05:53 +01:00
Quentin Guidée
ab8f731515
Fixed some conflicts
2020-02-12 17:42:58 +01:00
Léa Saviot
6f4a51a56d
[apps/poincare] Use IEEE754::exponentBase10 instead of floor(log10)
2020-02-12 15:13:26 +01:00
Ruben Dashyan
b54d5a31ba
[apps/shared/function] BaseNameCompliant returns a NameNotCompliantError
...
instead of a boolean
2020-02-12 15:13:26 +01:00
Ruben Dashyan
473d12f165
[apps/shared/function] Fix typo
...
introduced in
[ion/unicode/codepoint] Rename is[(Lower|Upper)Case]Letter to isLatin[(Small|Capital)]Letter
2020-02-12 15:13:26 +01:00
Ruben Dashyan
0a61e0f7bc
[apps/shared/round_cursor_view] Add warning about getPixels
2020-02-12 15:13:24 +01:00
Ruben Dashyan
63424fb98b
[apps/*/function_graph_controller] Factor selectFunctionWithCursor
2020-02-12 15:13:24 +01:00
Ruben Dashyan
246a9aa7a4
[apps/shared/function_graph_controller] Clarify function selection in initCursorParameters
2020-02-12 15:13:24 +01:00
Ruben Dashyan
1cdd61ea47
[apps/shared/function_graph_controller] Do not compute the numberOfActiveFunctions repeatedly
2020-02-12 15:13:24 +01:00
Ruben Dashyan
503a9ed128
[apps/shared/round_cursor_view] Fix GRAPH_CURSOR_SPEEDUP macro usage
2020-02-12 15:13:24 +01:00
Léa Saviot
424ee9fa15
[poincare] Add SymbolicComputation parameter to the reduction context
...
This way, in solver, we can reduce expression without expanding symbols
2020-02-12 15:13:24 +01:00
Ruben Dashyan
179ce5d5d5
[ion/unicode/codepoint] Rename is[(Lower|Upper)Case]Letter to isLatin[(Small|Capital)]Letter
...
to conform with unicode terminology
2020-02-12 15:13:23 +01:00
Ruben Dashyan
575b911da9
[ion/unicode] Split isDigit into isDecimalDigit, isBinaryDigit, isHexadecimalDigit
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
Émilie Feral
251db5b60e
[apps/shared][apps/calculation] Change class names:
...
ScrollableInputExactApproximateExpressionsCell -->
ScrollableThreeExpressionsCell
AbstractScrollableExactApproximateExpressionsView -->
AbstractScrollableMultipleExpressionsView
ScrollableExactApproximateExpressionsView -->
ScrollableTwoExpressionsView
ScrollableInputExactApproximateExpressionsView -->
ScrollableTwoExpressionsCell
2020-02-12 15:13:22 +01:00
Émilie Feral
87e4836196
[apps/calculation][apps/shared]
...
AbstractScrollableExactApproximateExpressionsView children classes
reload scroll after reloading the subview selection when entering the
responder chain and when cell becomes first responder. We don't reload
scroll when setting content of cells as this is done every time we
relayout - when scrolling in the table for instance.
2020-02-12 15:13:22 +01:00
Émilie Feral
56319ef275
[apps/shared] AbstractScrollableExactApproximateExpressionsView can hold up to
...
three expressions but no more BurgerMenuView.
ScrollableExactApproximateExpressionsView and
ScrollableInputExactApproximateExpressionsView inherit from it.
2020-02-12 15:13:22 +01:00
Léa Saviot
88ab0e686c
[apps] Less operations in willExitResponderChain if exiting app
...
If nextFirstResponder is nullptr, it means we are exiting the app, so
there is no need to relayout, reselect, ...
We did it bbefore because a long time ago, we used to keep all apps side
by side so they had to be thouroughly cleaned when exiting
2020-02-12 15:13:22 +01:00
Émilie Feral
60048cb9a9
[poincare] Create a ContextWithParent that implements expressionTypeForIdentifier
2020-02-12 15:13:22 +01:00
Léa Saviot
a3a1f86f8d
[apps] Add context parameter to fix tests
2020-02-12 15:13:21 +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
Léa Saviot
756eeeb2d8
[poincare/parser] Add context
2020-02-12 15:13:21 +01:00
Émilie Feral
158a45e94d
[apps/shared] AbstractScrollableExactApproximateExpressionsView: let the
...
child class decides which subview to select
2020-02-12 15:13:21 +01:00
Émilie Feral
d61336936e
[apps/shared] Create a class Dots to share dots masks between CurveView
...
and RoundCursorView. Use the same dot for illustrations of additional
results in Calculation app and Function app
2020-02-12 15:13:21 +01:00
Émilie Feral
06fa3bba5b
[apps/shared][apps/calculation] CurveView: enable to personalize the
...
maximal glyph length of graduation labels. Shorten them in
ComplexGraphView
2020-02-12 15:13:21 +01:00
Léa Saviot
f6c15198bc
[apps/regression] Power regression uses logarithm of series
...
This matches other apps results and we directly compute the values from
the data instead of doing a gradient descent.
2020-02-12 15:13:21 +01:00
Léa Saviot
97b495a4dc
[apps/interactive_curve_view_range] Orthonormal keep max grid unit
...
When setting the axes then putting on the orthnormalization, 2 * (max of
the two axes units) is put to 1 cm instead of doing 2 units = 1cm. This
roughly keeps the configuration of the window.
2020-02-12 15:13:21 +01:00
Émilie Feral
21f3cd629d
[apps/shared] CurveView: fix drawLabelsAndGraduations
...
Fix following bug: when handling label = "0", not shifted,
the label position should be computed as for the other labels.
2020-02-12 15:13:21 +01:00
Émilie Feral
685f030f83
[apps/calculation] Fix ScrollableInputExactApproximateExpressionCell and
...
ScrollableExactAppromiateExpressionsCell layout (layout of cells can be
asked at any moment - when handling copy/cut events)
2020-02-12 15:13:21 +01:00
Émilie Feral
dd61468056
[apps/calculation] ScrollableInputExactApproximateExpressionsCell:
...
relayoutSubviews after changing member variables that affect the
subviews frames
2020-02-12 15:13:20 +01:00
Émilie Feral
c6e54f90c3
[apps/shared] CurveView: fix confusion between after/before relative
...
position in drawLabel
2020-02-12 15:13:20 +01:00
Émilie Feral
800adce876
[apps/shared] CurveView: change API; drawLabel can draw a label at a
...
position and the relative position of the label (above, below, to the
left or right of the graduation) can be chosen. 'positionLabel' is a
private method used by 'drawLabelsAndGraduations' and 'drawLabel' to
determine the position of the label knowing the position of the
graudation and its relative position
2020-02-12 15:13:20 +01:00
Émilie Feral
17bc808257
[apps/shared] CurveView: fix drawLabelsAndGraduations when
...
graduationOnly is on: the graduation are not drawn only when outside of
the drawn rect
2020-02-12 15:13:20 +01:00
Émilie Feral
95137909c6
[apps/shared] CurveView: fixes drawLabelsAndGraduations when the 'fixCoordinate' parameter is true.
...
This fixes the graduation drawing of the box view in the statistics app
2020-02-12 15:13:20 +01:00
Émilie Feral
29bab70dcd
[apps/shared] CurveView: add a parameter "color" to drawLabel
2020-02-12 15:13:20 +01:00
Émilie Feral
dfd4811136
[apps/shared] CurveView: change API to expose 'drawLabel' and
...
'drawLabelsAndGraduations'
2020-02-12 15:13:20 +01:00
Émilie Feral
98c6f4ba47
[apps/shared] CurveView: factorize code of drawLine and drawSegment
2020-02-12 15:13:20 +01:00
Émilie Feral
818067e03b
[apps/shared] CurveView: add a parameter to drawSegment to draw dashed
...
segment
2020-02-12 15:13:20 +01:00
Émilie Feral
b47ded4074
[apps/calculation] Add a parameter in Shared::CurveView to choose the
...
curve thickness
2020-02-12 15:13:20 +01:00
Émilie Feral
bf07b5ab76
[apps/shared] CurveView: fix typo
2020-02-12 15:13:20 +01:00
Émilie Feral
1b83526c57
[apps/shared] Revert "ScrollableExactApproximateExpressionsView: remove useless reload"
...
This was not useless: without it, when you push several times the
calculation "1.2", going up in the history will display corrupted
cells...
2020-02-12 15:13:20 +01:00
Émilie Feral
80d8e8eead
Coding style
2020-02-12 15:13:20 +01:00
Émilie Feral
10c906e5e2
[shared] AbstractScrollableExactApproximateExpressionsView: when the
...
left subview is selected, reload the scroll to display the left view
2020-02-12 15:13:19 +01:00
Émilie Feral
acd9e63cbd
[shared] AbstractScrollableExactApproximateExpressionsView: fix
...
setDisplayLeft and setDisplayCenter to re-layoutSubviews
2020-02-12 15:13:19 +01:00
Émilie Feral
7e96ccf5a6
[shared] Typo
2020-02-12 15:13:19 +01:00