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
Ruben Dashyan
c1470ed9d3
[escher/input_view_controller] Define isEditing method
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
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
44809f4b3f
Substitute Escher app() by Container::activeApp()
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
ba2a98f5e5
[escher/app] Remove poor man's RTTI
2019-07-19 15:06:25 +02:00
Ruben Dashyan
443f974cbb
[escher/container] Inline activeApp() accessor
2019-07-19 15:06:25 +02:00
Ruben Dashyan
1f06819974
[apps] Remove Container * parameter from all App constructors
2019-07-19 15:06:25 +02:00
Ruben Dashyan
5f8a745957
[escher/app] Remove Container
2019-07-19 15:06:25 +02:00
Ruben Dashyan
268ad3f3ba
Access the shared container from escher and apps
2019-07-19 15:06:25 +02:00
Léa Saviot
cc8403e020
[escher/text_input] Factorize and clean handleEvent Right and Left
2019-06-21 14:30:14 -04:00
Léa Saviot
5f549b514e
[escher] Fix backspace on utf8 combining code point
2019-06-21 14:30:14 -04:00
Léa Saviot
2061c5d692
[escher/text_area] Fix text indentation handling
...
We used a small buffer to preprocess a text to insert in text area (add
indentation, remove empty code points, compute the next cursor location),
but the size of this buffer was sometimes too small and caused a crash.
Now we do all the text odification in place in the text area buffer.
2019-06-13 11:40:13 -04:00
Léa Saviot
3d991e56da
[escher/poincare] Cleaner way to find the cursored layout in LayoutField
...
Everything is now in the virtual method
LayoutNode::layoutToPointWhenInserting
This removes a dirty inclusion of apps/i18n.h in escher
2019-05-27 17:24:11 +02:00
Émilie Feral
2217eebaec
[escher] SelectableTableView: when reloading data, we temporary deselect
...
the table. We warn the SelectableTableViewDelegate that the selection
change is 'within a temporary selection change' when notifying it of the
change.
2019-05-03 15:54:21 +02:00
Émilie Feral
5e280c7538
[escher] ExpressionView: optimize setLayouts to avoid marking the whole
...
view as dirty when the layout did not really changed
2019-05-03 15:54:21 +02:00
Émilie Feral
c1a0e94ec7
[escher] Clean empty lines
2019-05-03 15:54:21 +02:00
Émilie Feral
240ed439e0
[escher] ScrollableView: discard duplicate data source of scrolling
...
offset
2019-05-03 15:54:21 +02:00
Émilie Feral
50ad6b6761
[escher] SelectableTableViewDataSource: avoid calling m_delegate->tableViewDidChangeSelection when only reloading the data.
2019-05-03 15:54:20 +02:00
Ruben Dashyan
a3fe99da21
[escher] Simplify TableView::scrollToCell
2019-05-03 15:54:20 +02:00
Léa Saviot
a88a1bcbef
[escher] Increase TextField::maxBufferSize
...
In order to be able to write a 10*10 adjacency matrix
2019-05-03 15:53:21 +02:00
Léa Saviot
b3d0de564a
[coding style] Small inlining
2019-05-03 15:53:20 +02:00