Commit Graph

151 Commits

Author SHA1 Message Date
É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
e4ec398ecd [escher] InputEventHandler gets the app directly 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
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
5a8596acd7 [ion/utf8_helper] Put default parameter in RemovePreviousGlyph 2019-06-21 14:30:14 -04:00
Léa Saviot
b696668422 [escher/text_field] Fix cursor navigation on combining code points 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
a7d8160ee0 [escher/text_field] Add missing cursor location update
Fixes the scenario: go to statistics, press the root key, then the XNT
key -> crash
2019-05-03 15:54:22 +02:00
Léa Saviot
5316372d72 [escher/text_field] When fetching XNT code point, text is draftText 2019-05-03 15:54:22 +02:00
Léa Saviot
07b22f44d2 [escher/text_field] Fix rect dirtying in setText
The content of the buffers might no be initialized before the setText,
so we cannot use reloadRectFromPosition, as it requires to perform
stringSize, which needs valid content.
2019-05-03 15:53:20 +02:00
Léa Saviot
cbb1055218 [escher] Fix TextField::ContentView::setEditing 2019-05-03 15:53:20 +02:00
Léa Saviot
b2a97cfc7a [escher] Fix buffer choice in TextField::glyphFrameAtPosition 2019-05-03 15:53:20 +02:00
Léa Saviot
e338577793 [unicode] Clean decoder use 2019-05-03 15:53:20 +02:00
Léa Saviot
c476ea5380 [escher/text_field] Fix removeCodePoint rect dirtying 2019-05-03 15:53:19 +02:00
Léa Saviot
34fc647ccd [escher/text_field] Code cleaning 2019-05-03 15:53:19 +02:00
Léa Saviot
39f6f4f5bb Remove compilation warnings 2019-05-03 15:53:19 +02:00
Léa Saviot
f9fbcabb30 [escher/ion] Factorize code for removing a code point in text field/area 2019-05-03 15:53:19 +02:00
Léa Saviot
bd2ea41fbe [apps/escher] Rename cursorTextLocation as cursorLocation 2019-05-03 15:53:19 +02:00
Léa Saviot
7b5c51b3c3 [escher] Fix textfield edition 2019-05-03 15:53:19 +02:00
Léa Saviot
bbb10f1993 [ion/kandinsky] Move unicode to ion 2019-05-03 15:53:19 +02:00
Léa Saviot
5c39cab73e [escher] Fix text inputs so they use UTF8 2019-05-03 15:53:19 +02:00
Léa Saviot
41afa92f10 [unicode] Use the UTF8Decoder to scan const char * 2019-05-03 15:53:19 +02:00
Léa Saviot
65e5adafac Remove Ion::Charset 2019-05-03 15:53:19 +02:00
Ruben Dashyan
08e8bf0eeb [escher] Implement ScrollView::minimalSizeForOptimalDisplay including margins
Remove from derived classes:
 - apps/calculation/scrollable_expression_view
 - apps/code/consol_line_cell
 - apps/shared/scrollable_exact_approximate_expressions_view
 - escher/layout_field
 - escher/table_view
 - escher/text_field
2019-02-18 16:49:58 +01:00
Léa Saviot
73d97944d5 [escher] Text fields do not have to handle special texts (_{}) anymore 2018-11-23 12:04:09 +01:00
Léa Saviot
bf6da61ca2 [escher/text_field] Fix privateHandleEvent text reset 2018-11-23 12:04:09 +01:00
Léa Saviot
860553b735 [escher] Fix cursor position in textfield
The cursor was not in the right place in TextFieldWithExtension
2018-11-23 12:04:08 +01:00
Léa Saviot
824ffd9c21 [escher] Fix TextField::setText update of draftTextLength and cursorLoc 2018-11-23 12:04:08 +01:00
Léa Saviot
5f4c94af67 [escher] Fix TextField::handleEvent bug 2018-11-23 12:04:08 +01:00
Léa Saviot
a0e716c1ad [apps/eschr] Rename textFieldDidHandleEvent parameter textSizeDidChange 2018-11-23 12:04:06 +01:00
Léa Saviot
293300973b [escher] TextField::handleEventWithText escapes quicker with null text 2018-11-23 12:04:06 +01:00
Léa Saviot
aea98de6ec [apps/escher] Fix "Clear" event handling in TextFieldWithExtension 2018-11-23 12:04:05 +01:00
Léa Saviot
e74e15eaf7 [apps/code] Handle too many Script default names used
When adding to many scripts without naming them, one can overflow the
number of default generated script names, in which case we force the
user to enter a name.
2018-11-23 12:04:05 +01:00
Émilie Feral
7e7c77a0e8 [escher] TextField and LayoutField handle move events while in editing
mode to avoid leaving unexpectedly edition mode
2018-11-23 12:04:03 +01:00
Émilie Feral
0a823da78c [escher] Variable box pop-up is handle as Toolbox pop-up by asking
InputEventHandlerDelegate
2018-11-23 12:04:03 +01:00
Léa Saviot
5ecd733904 [escher] Add comment in TextField::privateHandleEvent 2018-11-23 12:04:03 +01:00
Léa Saviot
96c105620a [escher] Force re-layout when aborting text field edition 2018-11-23 12:04:03 +01:00
Émilie Feral
d61ee2857b [escher] TextField: never flush the buffer when textField has only one
buffer
2018-11-23 12:04:03 +01:00
Émilie Feral
6dc1250df2 [escher] TextField: fix edition toggling when finishing editing 2018-11-23 12:04:03 +01:00
Émilie Feral
698332c355 [escher] InputTextDelegate and LayoutFieldDelegate don't inherit from
InputTextDelegate to avoid diamond inheritance
2018-11-23 12:04:03 +01:00
Émilie Feral
7778c694d1 [escher] Create an InputEventHandlerDelegate that gives the toolbox to
be used by an InputEventHandler
2018-11-23 12:04:02 +01:00
Émilie Feral
01e433a9f2 [escher] Clean Field and Input class hierarchy:
Class hierarchy:
- InputEventHandler
- TextInput
- EditableField derives from InputEventHandler
- LayoutField, TextField and ExpressioField derives from EditableField
- TextArea and TextField derives from TextInput
2018-11-23 12:04:02 +01:00
Léa Saviot
7b98467fa9 [apps/graph] Fix first responder when popup after renaming function 2018-11-23 12:04:02 +01:00
Léa Saviot
974519f61a [apps/code] Use TextFieldWithExtension in the list controller 2018-11-23 12:04:02 +01:00
Émilie Feral
a93e9566ad [escher] Create a parent class Field of TextField and
LayoutField
2018-11-23 12:03:59 +01:00
Léa Saviot
f2bfc8641f [escher] Fix strlcpy inserted 0 when inserting text 2018-10-19 17:15:51 +02:00
Léa Saviot
5d92f13c26 Clean strlcpy arguments 2018-10-17 11:22:37 +02:00
Romain Goyet
f8beae3b86 [kandinsky] Move to KDFont 2018-10-11 16:44:02 +02:00
Émilie Feral
1bfbc7a5ef [escher] Fix buffer overflow in TextField 2018-09-24 18:22:20 +02:00
Émilie Feral
f8f0813485 [escher] TextInput: get rid of variable-size tables 2018-09-17 17:14:43 +02:00