Forced the top cell of the country table to be cropped in the middle,
cutting the text, to avoid the cell looking squashed.
Change-Id: I4d126ed19249f47652bd7f2001384b2491cfe6f8
When choosing a language and then pressing back from the country menu to
get back to the language menu, the previously selected language remains
selected.
Change-Id: I018c51cce09d47b15bb4864c135d381a94b2a72f
u(n+2) = u(n+1) + u(n) + u(2)
u(0) = 2
u(1) = 2
Crashed because the global context was not checking if the sequence was
badly referencing itself
Change-Id: I97f694955e15518bb088db50deb761d7ee09d75f
Cache did not check that the step was the same before panning, causing
old values to remains cached.
e.g. :
- Type f(x) = x, and plot it.
- Go to Axes, and set Xmax = 0.
- Confirm
Change-Id: Ie8ed10c336cf517a65f19b05bd14866daf8128c2
Fix a bug preventing the cursor from moving to other curves using UP and
DOWN when the y value was undef.
To reproduce :
- In Graph, define f(x) = 1 and g(x) = ln(x), then draw the curves
- Press DOWN to select g
- Press LEFT until g is not defined anymore
--> Pressing UP or DOWN won't allow you to select f
Change-Id: I79ed4a57b78ac0b8dac3f66e722e358bd4be18d9
When selecting a country, the table would be cropped by the text, with
no separator between the white of the cropped cell and the background
color.
Change-Id: Ia6be40bce40b7cdb3efa064989d45ef5c046e364
The Equal sign now triggers a syntax error in all apps but Solver. This
make its behaviour symmetrical with that of < and >.
Change-Id: Ia886c547a315d5627a69f3f2acac2cbce0e202c2
The new zoom implemented for ContinuousFunction is now factorized inside
Function to benefit the Sequence class. The same things is done to code
added to Graph::GraphController, which is moved into
FunctionGraphController.
This removes the reimplementation of several methods, most notably
computeYRange, as the implementation for function is general enough to
work on sequences.
Change-Id: I9b8211354064f46c3fa3dde3191dcb39d627a1d2
The auto zoom did not display the X axis when drawing positive curves
with roots, such as sqrt(x).
Change-Id: Ic80fd3207691dc917f7b64c07d7745ab5df1daa3
Additional checks have been added to ensure that the first move of the
cursor from the center of the graph would not cause the window to pan up
or down.
Change-Id: I44d7e86223941076cbf03db7a221e9c0427a64e4
Initial zoom for displaying curves is computed according to the
following rules :
- For polar and parametric curves, the algorithm has not changed.
Vertical and horizontal ranges are chosen in order to display the
full curve with orthonormal graduations.
- For cartesian curves, the horizontal range is chosen in order to
display all points of interest (roots, extrema, asymptotes...).
The vertical range is fitted to be able to display those points, but
also cuts out points outside of the function's order of magnitude.
Change-Id: Idf8233fc2e6586b85d34c4da152c83e75513d85c
After choosing a language at onboarding, the country menu now has a
specific country selected by default (Spain for Spanish, Italy for
Italian...)
Default countries are specified in apps/language_preferences.csv
Change-Id: Ia6392aceb9bebf7e62a692c5a79eb8c4d7b71a9d
Classes LanguageController and CountryController have been fused into
one class LocalizationController, as they were very similar. This allows
the Settings and OnBoarding apps to only keep one controller for both
functions.
Change-Id: Ic23f300c37122249d34caaf18a633b5815240a78
Each country comes with an set of preferences, built at compile time by
apps/i18n.py, used to define :
- the exam mode
- the method for computing quartiles
- the unit system in which to output the results with units
Functions to access those preferences are available in
via sharedGlobalPreferences.
Change-Id: I220ebaa9b9e8954dfe33cd51936f47505b98978d
In stats when selecting an action on a column, all actions listed after
the one selected were applied. Adding breaks to the switch solved the
issue
Change-Id: I4a2f8a41f734a209abb17e76388eed551bf1769c
This fixes a bug where, when drawing 1/x, a vertical bar would appear on
0, because of false positive cache hits.
Change-Id: I2eafeac5e254c8a556769a41c8edc532db44383a