Commit Graph

467 Commits

Author SHA1 Message Date
Al Poole 1cf8322d12 mainview: Don't allow any file without text/* mimetype to be opened.
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4851
2017-05-14 22:12:00 +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 6e4b022575 search: ignore more binary files 2017-05-14 17:53:44 +01:00
Andy Williams f0922990c6 search: ignore more binary file types in project search 2017-05-13 23:31:20 +01:00
Andy Williams c37c23068c cmdline: don't try to open unknown file types
Display a warning and exit - fixes T5480
@fix
2017-05-13 23:29:46 +01:00
Al Poole f274063917 debugpanel: automatically run gdb according to project type. libtool/generic.
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4852
2017-05-10 06:48:01 +01:00
Al Poole 19971b006a filepanel: when opening as different file type, close first then open to ensure the file is instantly accessible as text or code (editing).w
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4844
2017-05-03 21:44:04 +01:00
Al Poole a46e32046f debugpanel: OSX uses different struct kp_proc layout. Adjust for that.
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4846
2017-05-03 21:01:01 +01:00
Al Poole e62a297610 debugpanel: update icons if process is resumed from the "console"
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4843
2017-05-02 22:03:23 +01:00
Al Poole 11f6f5871e debugpanel : Use correct system process state naming for 4.4BSD derivatives and Linux.
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4841
2017-05-02 21:16:36 +01:00
Al Poole a9b146da75 EDI -> Debugpanel -> Debug Process States/Signals -> Linux, OSX and FreeBSD et. al.
Summary:
Adds support for Linux, BSD and OSX for processing debug process states and signals.

With debugger icons can start and stop the process with signals. Icon also changes to indicate the process state.

Also removes the FIXME elm_code_fire bogus hack.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4832
2017-05-02 20:45:15 +01:00
Al Poole 415ab788da EDI -> DEBUGPANEL -> GDB INTEGRATION -> START
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: bu5hm4n, ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4822
2017-04-28 22:04:39 +01:00
Andy Williams cfe08f0756 refactoring for re-use 2017-04-28 21:16:47 +01:00
Andy Williams 64e8a3d703 Merge branch 'edi-0.5' 2017-04-28 20:15:35 +01:00
Andy Williams 35f6df6309 Use correct future API 2017-04-26 19:27:32 +01:00
Andy Williams 4e39afb6db Fix issue where replaced items could not be undone.
Note that this needs a not-yet-released efl change ;)
2017-04-26 18:37:39 +01:00
Al Poole 38dd432523 EDI -> Save -> Menu/Toolbar Indicator (w/o autosave)
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4819
2017-04-22 22:29:19 +01:00
Andy Williams a82062d6e6 Correctly ship the language C provider 2017-04-14 16:37:28 +01:00
Al Poole e3459cb526 EDI -> Main Menu -> Open Project (No tabs) -> Dancing window on Start Weirdness Fix
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4778
2017-04-09 11:43:24 +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
Andy Williams 67709ae536 searchpanel: Update render to give more space for results
Decouple the parsing from render a little bit more
2017-04-05 21:57:06 +01:00
Al Poole 4e1094b5f2 EDI -> Tasks -> TODO/FIXME -> Panel (NEW FEATURE)
Summary:
Initial support for tasks.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4764
2017-04-05 19:30:52 +01:00
Al Poole d988b4045e EDI -> Mainview -> Prev/Next tab Buttons -> FEATURE
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4765
2017-04-05 19:06:30 +01:00
Al Poole b61cffad6c EDI -> Welcome -> New Project -> Fix (OpenBSD)
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4756
2017-03-31 21:36:25 +01:00
Al Poole fb8b47c93c Edi -> Search Project - Add initial support for search in project.
Summary: Almost there.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4752
2017-03-30 23:06:34 +01:00
Andy Williams 4e3ff8f702 filepanel: use data object to avoid file lookups
Save memory and save isdir lookups all over
2017-03-30 22:28:35 +01:00
Al Poole 95f43adaec Move File/Dir Creation to edi_file.c/h
Summary: Also add options to menus

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Tags: #edi

Differential Revision: https://phab.enlightenment.org/D4750
2017-03-27 22:04:41 +01:00
Andy Williams 6cf426e24a filepanel: Update directory context after refactoring 2017-03-27 21:57:44 +01:00
Al Poole 0549f5be36 Add optional menu for directories in file view.
Summary:
Option is "Open terminal here"
also, if directory is empty:
	"Remove the directory"

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4748
2017-03-26 21:24:20 +01:00
Andy Williams 533ac7d858 welcome: correct showing the panel when all tabs are closed 2017-03-25 23:03:06 +00:00
Andy Williams f44ab43d47 welcome: Fix layout when not tabs are open 2017-03-25 22:49:47 +00:00
Al Poole 04c06302d0 Fix SEGV on right click of file browser that is empty!
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4744
2017-03-25 22:20:21 +00:00
Al Poole d0997ca6a8 Fix SEGV on goto line when out of range
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4745
2017-03-25 22:12:25 +00:00
Al Poole 629a293a66 Add option to delete file in browser
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4742
2017-03-24 22:30:35 +00: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
Al Poole c3bf4d86aa Mostly working...
Summary:
Problems occur when you change the search term and then
it wraps around...

Test Plan: Blast it!

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4724
2017-03-23 23:58:55 +00:00
Al Poole f8d72f91e6 Center the welcome window on start
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4731
2017-03-23 23:21:38 +00:00
Al Poole ae73791f78 Fix SEGV on shutdown with main window and project open...
Reviewers: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4725
2017-03-21 22:47:58 +00:00
Andy Williams 77eb19ce4f search: Show a notification that we wrapped search 2017-03-19 13:18:23 +00:00
Andy Williams 020f9ab3d7 fix whitespace 2017-03-19 12:50:32 +00:00
Andy Williams 92062043a4 search: Fix off by one/utf8 issues in replace 2017-03-19 12:50:07 +00:00
Al Poole 4315743706 @fix for T1852
Summary: Search should wrap around.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4722
2017-03-18 22:48:32 +00:00
Andy Williams c89a211a94 syntax: trigger eolian highlighting 2017-03-04 15:43:04 +00:00
Stephen 'Okra' Houston 05ee192b98 Edi: Add double click expand/contract support on the file panel. 2017-03-03 18:08:40 -06:00
Andy Williams 0483196de4 clang: Update clang command database to support cmake too 2017-02-19 22:25:12 +00:00
Andy Williams 32b6169e0d Centralise some more path handling methods 2017-02-19 16:22:53 +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 25d5c6b7e6 cmdline: Add a little user feedback 2017-02-10 00:13:55 +00:00
Andy Williams 13c7c1fcab syntax: Still ask clang to highlight preprocessor/macros 2017-01-31 20:09:02 +00:00
Andy Williams fd6584f8b6 filepanel: remove unneeded vars 2017-01-31 18:46:19 +00:00
Andy Williams 9631552eaa filepanel: Don't apply filter to folders
This way we can browse around looking for matching files :)
2017-01-31 18:44:58 +00:00
YeongJong Lee 36a5bb1410 ui: Bring in current tab
Summary: Bring in current tab if it is not in the scope of scroller.

Test Plan:
1. Open project
2. Open several file
3. Check current tab is in the scope of scroller

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4416
2017-01-31 18:43:49 +00:00
YeongJong Lee b73f04cba3 filepanel: fix bug that unable to expand again
Summary:
When directory is contracted, hash data still remained.
In order to expand again, it is needed to delete hash data of subitems when contracted

Test Plan:
1. Open project.
2. Expand directory
3. Contract directory
4. Expand directory again
5. check that works fine

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4634
2017-01-31 07:41:39 +00:00
Andy Williams 378d4c763f filepanel: Fix file duplication bug.
Update of the UI was too slow to keep up with filesystem changes.
Introduce a new hash to mirror what is pending realisation.
Also fixes file filtering bug :)
@fix
2017-01-29 13:05:18 +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
Andy Williams 2927f71dcf filepanel: Hide standard hidden files 2017-01-15 22:03:46 +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
Andy Williams 14498afdaa config: Store relative paths for open files
Avoid problems with moving project
or having multiple copies of the same codebase!
2017-01-02 21:19:55 +00:00
Andy Williams 1b2ee9a372 elm_code: update for latest elm init 2017-01-02 14:39:58 +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
Andy Williams aef5bb8fef documentation: correct size for scaled displays 2016-12-28 23:36:22 +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 6574098205 elm_code: Update to new API signature 2016-12-27 22:17:30 +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 5d104b38f2 filepanel: correctly look up files within their dir
Avoid duplication even when multiple files have the same name
2016-12-26 18:34:44 +00:00
Andy Williams 65dc251098 ui: When tests are running show the build results first
As soon as test results appear then show the test panel
2016-12-26 18:33:16 +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
YeongJong Lee 21ae2bfebd filelist: Check that the filelist has same file before insertion.
Summary:
'elm_code_file_save' emit EIO_MONITOR_FILE_CREATED event.
It occurs filelist duplication.
So Check that the filelist has same file before insertion.

Test Plan:
1. Run Edi.
2. Open project.
3. Edit a file.
4. Save the file.
5. Check that the filelist doesn't have same file.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4497
2016-12-19 23:15:54 +00:00
Andy Williams d24ded8b5a editor: grab keys that should not feed down to elm_code 2016-12-17 13:16:18 +00:00
Andy Williams a112dcad9e autosuggest: properly guard the clang variables 2016-12-17 12:31:36 +00:00
YeongJong Lee 8d82796fa1 autocomplete: fix screen flicker when use autocomplete
Summary: Remove file save function when initialize clang.

Test Plan: Check that the screen is not blinking when use autocomplete.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4486
2016-12-16 22:06:49 +00:00
YeongJong Lee 9d128bdb40 autocomplete: Refresh candidate list when typing.
Summary:
if you start typing when candidate list is shown,
the list refresh immediately.

Test Plan:
1. Run edi.
2. Open project.
3. Open candidate list using <ctrl> + <space>.
4. Continue typing.
5. Check the candidate list is correct.

Reviewers: bu5hm4n, ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4478
2016-12-13 07:42:36 +00:00
Andy Williams 3f76c4d290 elm_code: update parameter order 2016-12-12 08:30:59 +00:00
Andy Williams efd56cf918 fix typo in patch 2016-12-12 00:24:51 +00:00
YeongJong Lee ebc07e85e0 autocomplete: Add code autocomplete using clang
Summary:
Pressing shortcut(<ctrl> + <space>) while editing the code show
the list of suggestions.

This support variable, function, struct member.. etc.
It is simple version, so it show just function name without parameter, return type.

Test Plan:
1. Run edi.
2. Open project.
3. Press shortcut(<ctrl> + <space>) while editing the code.
4. Check that the list of suggestions are correct.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: bu5hm4n

Differential Revision: https://phab.enlightenment.org/D4476
2016-12-12 00:23:22 +00:00
Jean-Philippe Andre 886b6356bd editor: Fix crash when resizing without any code open 2016-11-30 15:34:34 +09:00
Andy Williams 48e954137f files: Avoid missing mime check 2016-11-30 01:51:46 +00:00
Andy Williams 5abd439e3e filelist: Actually update on file add/rm
This is pretty much working except some genlist bugs :(
2016-11-29 18:16:12 +00:00
Andy Williams 539953bc72 Fix crash when opening a new window
Since the refactoring this was duplicate freeing
@fix
2016-11-29 17:09:25 +00:00
Andy Williams fc89c66617 ui: Don't how open context menu for directories 2016-11-29 17:08:58 +00:00
Andy Williams bee632e5a1 ui: Fix file listing to stop duplicating entries
Working towards a proper refresh of the UI on change...
@fix
2016-11-29 17:03:45 +00:00
Andy Williams 49f7506521 highlight: cancel the file parsing on line events
Either we have removed a line and could crash or we have
added a line and everything will be off by one!

This will get fixed moments later by the line change event
2016-11-28 01:46:07 +00:00
Andy Williams 8703876dc7 about: Update report issue link
Why do phab upgrades always break these links?
2016-11-27 23:08:50 +00:00
Andy Williams 9a0b7e8d53 ui: Reset search term when activating search 2016-11-26 02:20:35 +00:00
Andy Williams 890d54fc57 filepanel: don't reload on monitor until we have it fixed 2016-11-06 16:26:34 +00:00
Andy Williams 77e077ee4a ui: Make file tabs scrollable and highlight current tab
A few layout "hacks" here inkeeping with the way Elm wants it...
2016-11-06 16:24:55 +00:00