Commit Graph

144 Commits

Author SHA1 Message Date
Al Poole 57d2c5810a edi_theme: Add support for colour themes in EDI.
Finally adding theme support for Elm_Code_Widget. Fairly
self-explanatory. Settings-> Display -> Choose theme. Work
from both myself and Andy Williams on this one. A good one!
2017-11-27 23:09:51 +00:00
Al Poole 25339554b7 edi_filepanel: select on focus.
Use a timer for selecting the file browser item. Click tab and click
browser file work as before. Clicking the editor will focus in the
browser also with an "unnoticable" delay from the timer poll.
2017-11-23 14:51:29 +00:00
Al Poole f3dcf4b1f1 Revert "editor: on focus dont highlight file in panel."
This reverts commit cffd523df4.
2017-11-22 16:27:30 +00:00
Al Poole cffd523df4 editor: on focus dont highlight file in panel.
This can cause terrible deadly recursion. Now clicking on
the filepanel will select and show and clicking on the tab
will select in the file browser. We lose clicking the widget
directly to selection in the file browser...for now.
2017-11-22 16:02:21 +00:00
Al Poole b27c43abc5 editor: dont use smart parent object.
This fixes: T6389 for Edi. Perhaps needs fixes elsewhere IDK.
2017-11-22 15:48:00 +00:00
Andy Williams 49b8b3f5b9 l10n: Update strings to remove non-translation and trailing symbols we can add in code 2017-10-11 16:16:29 +01:00
Al Poole 7a5083c790 mainview: Add support for split-panes.
This adds the ability to edit multiple regions of the same
file at the same time. The views are synchronised. This
also adds a complementary function allowing us to get panel
from path name. We use this for focus sanity with our
additional split views.
2017-10-10 23:29:17 +01:00
Andy Williams 2933c2faf6 autosuggest: avoid lingering tab-complete suggestions
On focus out or mouse downs we invalidate the suggestion
2017-09-24 21:38:14 +01:00
Andy Williams 75afcf4be8 snippet: fix indentation of inserted lines 2017-09-24 21:38:01 +01:00
Andy Williams f1643f08ef autosuggest: Add safety for optional language features
@fix crash with rust editor
2017-09-22 10:28:50 +01:00
Andy Williams add0d7f6c4 autosuggest: veto tab propagation for all inserts 2017-09-21 12:29:57 +01:00
Andy Williams 02525fe8ad autosuggest: speed up suggeestions
cache the list and refresh when we re-parse...
2017-09-20 22:11:43 +01:00
Andy Williams e03f234573 autosuggest: Show first match for tab completion
Displays a hover that shows the match - and you can click it too.

Closes T5902
@feature
2017-09-20 22:11:43 +01:00
Al Poole 02a1872365 popups: more UI tweaks. 2017-09-13 00:05:56 +01:00
Andy Williams 08547bbd3a Add translation support
Fixes T5901
2017-09-11 21:06:22 +01:00
Al Poole d259a776a9 editor: background file changes. Fix editor reload on background file change. 2017-09-07 14:54:50 +01:00
Al Poole 514e472cd1 filepanek: set the filepanel focus on editor focus.
Tab selection will focus the editor. This fixes occasions
when clicking between panels. So the filepanel focus is
uniform. Should have thought of doing it this way before.
2017-09-02 11:47:18 +01:00
Al Poole da30264929 popups: improve visual display/style of the main popup widgets.
Reviewers: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D5117
2017-08-22 12:43:59 +01:00
Al Poole e35c4ba3af windows: make windows work properly and autosave properly.
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D5116
2017-08-22 12:38:56 +01:00
Al Poole fe2714ea7e editor: handle file modifications properly.
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D5114
2017-08-21 17:18:02 +01:00
Andy Williams 804d14cef3 panels: Track focus of editors when we're changing panel 2017-07-24 18:27:45 +01:00
Andy Williams cd4e83b9b2 editor: Record undo for autosuggest insertions 2017-06-16 12:52:48 +01:00
Andy Williams a10c4aacb6 ui: Speed up screen load and remember current tab
This is a pretty simple type of backgrounding - only load files for tabs as they become visible :)
2017-06-08 18:31:45 -07:00
YeongJong Lee 6239499fed autosuggest: Refactor suggest list show function
Summary:
1. Fix wrong location of suggest list
2. Remove duplicated function
3. Add return condition

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4918
2017-05-28 19:00:30 +01:00
Andy Williams 19c48c6cdc editor: Initial work in snippet support
Not really multiline yet but it's a start
2017-05-14 17:56:00 +01:00
Andy Williams feb1fc18e7 whitespace 2017-05-14 17:55:31 +01:00
Andy Williams 2735b3f6c7 gui: Update undo/redo icons to show what actions can apply.
Also actually hook in the redo feature :)
2017-04-07 23:39:44 +01:00
Al Poole 2c2fca6d82 Fix not catching reload of files outside of program.
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4733
2017-03-24 17:52:32 +00:00
Andy Williams c89a211a94 syntax: trigger eolian highlighting 2017-03-04 15:43:04 +00:00
Andy Williams 784c6c4917 clang: re-scan after save to get latest changes.
Slightly behind the cursor but better for the cache. Removes need to pass unsaved file
2017-02-18 23:06:06 +00:00
Andy Williams f89f1bb0c6 clang: Add support for compile command databases
Relies on having bear (https://github.com/rizsotto/Bear).
Also refactor clang code to only have 1 instance per tab.
2017-02-17 22:49:27 +00:00
Andy Williams 13c7c1fcab syntax: Still ask clang to highlight preprocessor/macros 2017-01-31 20:09:02 +00:00
Andy Williams bc3ef23a3d EFL fixes make this not needed 2017-01-28 13:00:10 +00:00
Andy Williams b85f66f14a search: Fix multiple search and bringing offscreen matches in 2017-01-22 09:56:44 +00:00
Andy Williams 8f4e7548b6 editor: Use elm_code for most of our syntax now.
This means realtime syntax and we can use clang for lookups
ad error prompts etc.
2017-01-21 16:02:33 +00:00
YeongJong Lee 1c3474245a autosuggest: Fix segment fault when type long word
Summary:
It need a space more for adding a charater.
e.g. line 434..

Test Plan:
1. open suggest list in code file using <Ctrl> + <Space>.
2. type some long word.
e.g. 'evas_object_smart_callback_add'
3. Check there is no segment fault.

Reviewers: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4562
2017-01-13 11:45:39 +00:00
Andy Williams 63e6376697 editor: Display mime type description
If the language provider exists and can describe it :)
2017-01-12 13:08:50 +00:00
Andy Williams 2a82fedcb1 suggest: Move to a language provider
This means we can add great new stuff in a (nearly) pluggable way
2017-01-11 18:00:33 +00:00
Andy Williams e6feb19a30 suggest: Move documentaton lookup to suggeest provider
Trying to get all the clang code out of edi_editor
and into suggest_provider_c :)
2017-01-11 14:23:15 +00:00
Andy Williams 068949a25a suggest: Simplify sugggest API
Moving to a language provider so fewer entry points if possible
2017-01-11 12:48:28 +00:00
YeongJong Lee 73d8670247 autosuggest: Fix position when the suggest list is hidden.
Summary: Remove some unnecessary function.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4539
2017-01-01 14:26:57 +00:00
YeongJong Lee e4af7c18a9 editor_doc: Add documentation finding support using libclang
Summary:
<Ctrl> + <R_Click> opens document. This find doxygen comment using libclang and
dump each tags.
Now, it just support functions.

Test Plan:
1. Open document using <Ctrl> + <R_Click>.
2. Check that the document is correct.

Reviewers: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4522
2016-12-28 23:35:08 +00:00
Andy Williams 53e7419009 autosuggest: add tests to clang suggest provider
A small refactor became obvious because the lookup is not really
using the curword passed in - we want all options then filter later!
2016-12-27 13:26:38 +00:00
Andy Williams 49b55e838e autosuggest: refactor to split clang suggest code from editor
Make room for other suggest providers too
2016-12-24 23:31:29 +00:00
Andy Williams 9cef5db6c5 autosuggest: Move formatting to 1 place
Also correctly handle fonts with spaces
@fix
2016-12-23 22:56:55 +00:00
YeongJong Lee f9b8129724 autosuggest: One editor has one suggest evas object
Summary:
Remove unnecessary global variable.

This commit also fix bug that using autosuggest(<Ctrl> + <Space>) occurs
segment fault in non-code file.

Test Plan:
1. Run Edi.
2. Open project.
3. Open non-code file (e.g. README).
4. Call suggest list using <Ctrl> + <Space>.
5. Check that there is not segment fault.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4509
2016-12-23 10:07:03 +00:00
Andy Williams 0bc9f3dc1d editor: cleanup methods a little 2016-12-22 10:59:36 +00:00
Andy Williams 04d86d3250 don't crash on invalid lines 2016-12-22 10:56:53 +00:00
YeongJong Lee 0866448895 autosuggest: Support detail of suggest
Summary: The suggest list shows detail of suggest.(return type and parameter)

Test Plan:
1. Run edi.
2. Open project.
3. Open suggest list using <ctrl> + <space>.
4. Check that The detail of suggest is correct.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4505
2016-12-22 10:50:59 +00:00
YeongJong Lee 284c7ff3ca autosuggest: Change the variable name from 'autocomplete' to 'suggest' for readability.
Summary:
Change the variable name from 'autocomplete' to 'suggest'.
Because 'autocomplete' is too long.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4496
2016-12-19 23:26:26 +00:00