Commit Graph

209 Commits

Author SHA1 Message Date
Andy Williams 9f96fa0c00 [elm_code] don't strip whitespace on current line
When saving if any widget has a cursor on the line
we shouldn't strip the trailing whitespace
2015-08-29 14:11:40 +01:00
Andy Williams 20162692f0 [tests] Correct checking of just length chars
Avoid traversing beyond string length
2015-08-29 12:06:30 +01:00
Andy Williams 1e5e74d947 [elm_code] trim all trailing whitespace on save
Rather than just blank lines remove all trailing whitespace from lines
2015-08-29 12:05:56 +01:00
Andy Williams d5804b0837 [elm_code] Trim empty lines on save
When writing out a document set line length to 0 if it
only contains whitespace
2015-08-28 00:15:55 +01:00
Andy Williams b1fd31d3a2 Fix some bad memory access during widget creation 2015-08-23 23:23:07 +01:00
Andy Williams 4c6fb9cc80 editor: allow cursor placement in blank file
This way we can start editing a newly created file!
2015-06-10 23:33:46 +01:00
Andy Williams 556d5790fb editor: Fix crash opening empty files 2015-06-10 23:32:15 +01:00
Andy Williams ab8f56af52 editor: fix a strange crash in calculations
Seems that gutter was not always correct after eo_do
2015-06-09 22:31:57 +01:00
Andy Williams dd4c0fa217 elm_code: Fix tab behaviour following API changes
Moved the tabwidth calculations to widget as that's where
they actually make sense
2015-06-08 23:13:03 +01:00
Andy Williams 06fa3d494b elm_code: remove selections if moving cursor
The selection remaining after cursor move was getting confusing
2015-06-07 23:13:26 +01:00
Andy Williams cf322a6388 texts: fix tests broken in previous refactor 2015-06-07 23:12:05 +01:00
Andy Williams 24d3a01e56 elm_code: indent lines to match whitespace above
We can look at more complex scope based indenting later
2015-06-07 23:11:25 +01:00
Andy Williams 74b3905885 elm_code: consistently use 0 based text index
This means it's more familiar as regular string work when
using the elm_code_line APIs. It's also more distinct from
the elm_code_widget layout which is still 1 based columns.
To support unicode we must convert correctly.
Now FIXED!
2015-06-03 21:29:31 +01:00
Andy Williams ac21aac0e1 elm_code: add legacy API.
Refactor eo API in line with elm_obj_* elsewhere
2015-06-02 08:22:36 +01:00
Andy Williams 72c3cc924a Fixing make dist 2015-06-01 23:17:10 +01:00
Andy Williams 782957e6ae Fix header location 2015-06-01 00:26:24 +01:00
Andy Williams fc68e6c198 Fix many warnings.
Make the font face const char * and use eina_stringshare
2015-05-31 21:18:18 +01:00
Andy Williams b07cc34de6 performance: Fix issue where EDI would slow down
a bad circular problem where an error with tooltips causes more
tooltips to be spawned...
2015-05-30 22:48:35 +01:00
Andy Williams 906cfc9a2c fix crash when deleting over a line ending 2015-05-30 20:46:34 +01:00
Andy Williams 704cec0ae7 setting: Add a font picker
Monospace only so we get a deccent looking result.
Mostly from the terminology project - thanks guys
2015-05-30 10:32:37 +01:00
Andy Williams fe89f7fbde editor: trigger saves if selection cut or pasted 2015-05-30 10:31:46 +01:00
Andy Williams 642bb0ba85 elm_code: support setting custom fonts
For EDI create the config that would allow this to be altered.
Actual setting widget to follow...
2015-05-30 10:31:46 +01:00
Andy Williams fcce45fc82 Fix deletion inserting random data.
Off by one error (doubled). Classic.
Lesson: Run the tests you write!
2015-05-29 13:10:25 +01:00
Andy Williams de37470730 selection: fix crash when deleting large selection
snprintf is not the tool for simple string copy
- especially if not null terminated
2015-05-24 12:58:39 +01:00
Andy Williams 4c00c9e1fc Update to latest eolian (getting stable we hope).
Also mark code as a construction property
2015-05-20 14:18:20 +01:00
Andy Williams 8d9f952958 Fixup tests
Fixing compile errors and out of date tests. oops.
2015-05-18 19:40:06 +01:00
Andy Williams c84b148670 Update to latest .eo file type 2015-05-18 19:24:01 +01:00
Andy Williams 1c5717ffb1 editor: fix nulls being appended to lines
Should resolve issues with nulls being inserted
and also crashes on pasting into a selection
2015-05-18 15:49:24 +01:00
Andy Williams 7a8b0c8b93 editor: add pageup/down support
Page up or down by 85% of the visible window height
2015-05-12 23:15:25 +01:00
Andy Williams 703c63f426 eolian_gen fixes to inheritance 2015-05-11 23:17:44 +01:00
Andy Williams a44f55cf69 Update elm_code widget .eo doc for EFL master 2015-05-11 23:11:28 +01:00
Andy Williams c8d23dc720 editor: wrap left and right cursor moves around
when there is a line to move to we should wrap cursor movements
2015-05-05 22:38:02 +01:00
Andy Williams 246132b4ea editor: bind home and end keys 2015-05-05 21:49:21 +01:00
Andy Williams a5e1f82382 editor: correctly paste multiline windows text 2015-05-05 21:41:29 +01:00
Andy Williams ee9cec7ddd editor: Fix crash when pasting multi line
Not tracking length correctly so depending on what else is
in memory we could overrun the buffer
2015-05-05 21:40:22 +01:00
Andy Williams d2f14a82b7 elm_code: add a TODO/FIXME standard parser
Corret some callback code and re-parse each time the file is saved.
Use this to clean up save/parse code in EDI too
2015-04-20 01:21:03 +01:00
Andy Williams 4e7cae76dc elm_code: add multiline paste support.
Creating and breaking out a few helper text methods at the same time.
Test all that we can for this reasonably complex operation
2015-04-19 15:00:10 +01:00
Andy Williams 137dbed20b elm_code: retain line formatting on file callback
We don't need to reset all the lines in file load - just clear
2015-04-13 00:15:21 +01:00
Andy Williams 9cfe41ee00 syntax: reset status and hints when we reset token
re-use elm_code methods when we do this in edi
2015-04-12 23:04:46 +01:00
Andy Williams 462a60d85d syntax: don't slow down by repeating tokens
Clear out the token list before each parse callback loops
2015-04-12 17:25:20 +01:00
Andy Williams 8c0f74628b search: Fix issue when text is at end of line
Tests were wrong, fix and add more
2015-04-12 16:56:17 +01:00
Andy Williams 5e72e7e71e elm_code: Correctly delete tabs when mid-tab
Delete at least 1 char and move cursor to the beginning of the tab
2015-04-07 23:09:16 +01:00
Andy Williams 58c1e5bc82 elm_code: Fix position calculations at line end
Addresses random NULLs in content after newline
2015-04-07 23:05:47 +01:00
Andy Williams b6d0ced5ec elm_code: bring widget_text into widget object 2015-04-04 19:01:05 +01:00
Andy Williams 4cf18aed40 elm_code: refactor widget to seperate space.
Keeping the private files for elm_code cleaner
2015-04-04 18:17:01 +01:00
Andy Williams f50bff8e99 editor: Add a tooltip popup if you hover over a line with a warning attached 2015-04-04 17:51:39 +01:00
Andy Williams 151956ea93 editor: Fix performance of loading large files 2015-04-02 22:48:23 +01:00
Andy Williams 5a1629e7a4 editor: Fix performance of adding deleting lines
removed the numerous callbacks that were not needed
2015-04-02 00:32:16 +01:00
Andy Williams 7942fa8710 elm_code editor: Fix bug with newlines
Badness introduced with the tab work was padding lines with NULL
2015-03-30 23:36:28 +01:00
Andy Williams 3ce607322b elm_code editor: handle tabs when deleting
Make sure we're at the right position when we delete, backspace
or split lines with tabs in them
2015-03-30 20:07:45 +01:00