Commit Graph

1074 Commits

Author SHA1 Message Date
Jean-Baptiste Boric
d7dfb57c5c Change visibility of Toolbox's rootModel() 2019-10-23 18:28:15 +02:00
Romain Goyet
758c217120 [ion] ion_main takes const arguments 2019-10-16 10:01:00 +02:00
Émilie Feral
770f0971d7 [escher] TableView: cellAtLocation returns nullptr if the cell is not
currently displayed
2019-10-07 14:36:03 +02:00
Émilie Feral
4d593a6149 [poincare] PrintFloat: take into account the distinction between char
and glyph length in ConvertFloatToText
2019-09-26 11:26:48 +02:00
Émilie Feral
3872785d57 [escher] Add Metric::CellMargin 2019-09-26 11:26:48 +02:00
Émilie Feral
743bf7cf28 [escher] EvenOddMessageTextCell wraps the message view with a 2-pixel
margins (avoid almost duplicate classes)
2019-09-26 11:26:48 +02:00
Émilie Feral
6f70924893 [escher] EvenOddBufferTextCell wraps the text view with a 2-pixel margin 2019-09-26 11:26:48 +02:00
Émilie Feral
20abac86f4 [apps/graph] ListParameterController: interval print float mode and
number of significant numbers are dynamically adjusted with the
available space
2019-09-23 17:07:18 +02:00
Ruben Dashyan
1d966ce23c [apps/*/expression_model_list_controller] editExpression sets text instead of InputViewController::edit 2019-09-20 17:11:42 +02:00
Ruben Dashyan
7d9f479f3c [escher/input_view_controller] Define setTextBody method
And inline textBody method.
2019-09-20 17:11:42 +02:00
Léa Saviot
4caf9f5197 [coding style] Make some methods const 2019-09-09 20:05:14 +02:00
Léa Saviot
100b0c0186 [apps/escher] Uniformize k_separatorThickness 2019-09-09 19:10:17 +02:00
Léa Saviot
e67160b878 [apps/graph] Faster cursor scrolling on device
This commit is quite dirty but works well
2019-09-09 16:56:32 +02:00
Léa Saviot
0d2c20bceb [apps/graph] Fix function renaming
Scenario: Funciton renamed f123456 would be saved as f12345 due to
buffer size problem
2019-09-09 13:30:09 +02:00
Ruben Dashyan
424036489b [escher/selectable_table_view_data_source] Mark getters as const 2019-09-04 15:07:40 +02:00
Ruben Dashyan
ff6eb00801 [escher/selectable_table_view_data_source] Inline all in header file 2019-09-04 15:07:40 +02:00
Léa Saviot
f3376de1b2 [escher/scroll_view] Fix redrawing glitch
Scenario: Go to statistics, add values on the last column, when the
vertical scrollbar appears there is a drawing glitch on the horizontal
bar.
2019-09-04 13:43:37 +02:00
Léa Saviot
41bcc1f133 [escher/scroll_view] Coding style 2019-09-04 13:43:37 +02:00
Léa Saviot
553c649a80 [apps] Fix Stores margins 2019-09-04 13:43:37 +02:00
Émilie Feral
6013e6a937 [escher] Add a class MessageTableCellWithChevronAndBuffer 2019-08-29 15:54:52 +02:00
Émilie Feral
638b655c58 [escher] Add a comment to clean TableCell and margins handling 2019-08-29 15:54:52 +02:00
Ruben Dashyan
c1470ed9d3 [escher/input_view_controller] Define isEditing method 2019-08-29 11:07:22 +02:00
Ruben Dashyan
0f3fc46ad1 [escher/message_table_cell_with_chevron_and_expression] subAccessoryView has margin by default 2019-08-29 11:07:22 +02:00
Émilie Feral
cbe6d312d4 [escher] Add a comment for future improvement on TextField 2019-08-13 09:44:00 +02:00
Émilie Feral
011142427a [esher] TextField: fix issues:
- when textFieldDidFinishEditing failed ("1+ln(-2)" in a scalar
entry for instance), the previous text was modified even if edition aborted
- The draft buffer was not reinitialized when overriding the draft text
buffer with a text event
2019-08-13 09:44:00 +02:00
Émilie Feral
12060e2ae7 [escher] TextField: all text fields use the same draft text buffer 2019-08-13 09:44:00 +02:00
Léa Saviot
c839fb52a3 [escher/layout_field] Fix cursor position on Empty layout
Scenario: In the calculations app, write 1, Enter, write •|/2, go up,
then go down. There is a problem with the empty layout and the cursor.
2019-08-08 17:22:03 +02:00
Léa Saviot
ce15bc202d [escher/layout_field] Fix EmptyLayout disappearance
Scenario :
In the calculation app, write 1, press Enter.
       •|
Write ---
       2
Then go up. The empty layout on top of the fraction disappears.
2019-08-08 17:22:03 +02:00
Émilie Feral
2ecc566c2c [escher] TextField: when handling event with text, replace system
parenthesis by user parenthesis to switch from layout structure to
linear text.

When copying a layout and pasting it to a textfield, we add required
parentheses:

 2+1
----- serializes to ---> [2+1]/3 and is turned to (2+1)/3 before being
  3
handled by a textfield.
2019-08-08 17:22:02 +02:00
Émilie Feral
059c596a80 Makefiles: avoid building all sources for each target; introduce more
modularity
2019-08-08 17:22:01 +02:00
Émilie Feral
2861a35840 Clean some warnings 2019-08-08 16:29:38 +02:00
Léa Saviot
e8be088478 [apps/escher] Factorize TxtArea and Code::EditorCtrlr's k_indentSpaces 2019-08-08 16:22:28 +02:00
Émilie Feral
7a4ee746b2 [escher] TextField: call reinitDraftBuffer after edition is complete to
avoid erasing text that is required later.

Fix bug: OK handling on function list in linear mode did not copy the
function expression into the textfield before editing
2019-07-30 11:47:42 +02:00
Ruben Dashyan
bc8b5af2e6 [escher/modal_view_controller] didBecomeFirstResponder selects modal view if displayed 2019-07-19 15:06:25 +02:00
Ruben Dashyan
44809f4b3f Substitute Escher app() by Container::activeApp() 2019-07-19 15:06:25 +02:00
Ruben Dashyan
b4cac92af2 [escher/modal_view_controller] Clean didBecomeFirstResponder 2019-07-19 15:06:25 +02:00
Ruben Dashyan
772610d9e0 [escher/container] Assert activeApp() does not return nullptr 2019-07-19 15:06:25 +02:00
Ruben Dashyan
224f7873f7 [*container] Make Container::s_activeApp protected 2019-07-19 15:06:25 +02:00
Ruben Dashyan
a0e6151b26 [*container] Remove static Container::sharedContainer 2019-07-19 15:06:25 +02:00
Ruben Dashyan
80981ce865 [escher/container] Make activeApp static 2019-07-19 15:06:25 +02:00
Ruben Dashyan
17795eed87 [escher] Include container.h instead of app.h
app.h did actually include container.h
2019-07-19 15:06:25 +02:00
Ruben Dashyan
0531187cda [escher] Cleaner app header inclusion 2019-07-19 15:06:25 +02:00
Ruben Dashyan
055d601854 [apps] Define TextFieldDelegate::textFieldDelegateApp() directly from ::app() 2019-07-19 15:06:25 +02:00
Ruben Dashyan
5058f64163 [apps] Define LayoutFieldDelegate::expressionFieldDelegateApp() directly from ::app() 2019-07-19 15:06:25 +02:00
Ruben Dashyan
2888eddd06 [escher/button_row_controller] Access the app directly 2019-07-19 15:06:25 +02:00
Ruben Dashyan
e4ec398ecd [escher] InputEventHandler gets the app directly 2019-07-19 15:06:25 +02:00
Romain Goyet
21907fb89a [apps] Get rid of App casts 2019-07-19 15:06:25 +02:00
Romain Goyet
581ec55832 [escher] Inline the App::snapshot() function 2019-07-19 15:06:25 +02:00
Romain Goyet
45875dd642 [escher] Make app() a global function
This way it can easily be reached by anyone, including non-responders.
And it can easily be overwritten in namespaced apps.
2019-07-19 15:06:25 +02:00
Ruben Dashyan
652cbae9ac [escher/responder] Access the app directly from the shared container 2019-07-19 15:06:25 +02:00