Summary:
before, we cannot move the live edit item using direction key.
now we can modify it using direction key.
@T3356
Test Plan:
1. launch enventor
2. insert a live edit item
3. move the item using direction key
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Differential Revision: https://phab.enlightenment.org/D3862
File browser shows workspace directory and its sub files.
Workspace directory is set with argument "-w" and directory path.
(e.g. enventor -w ./workspace)
This commit implements T3389.
Manage text blocks, that used for autocomplete feature.
This commit make possible to undo or redo whole block of text
including user input. For example: user types "col"
and choose "collections" from ctxpopup. In normal mode
of undoredo module in case of undo action will be left
"col" text. In smart mode whole block "collections" will be deleted.
Summary:
when we insert image template or live view item,
the template code of image resource will be duplicated.
so, I added the code checking template image resource not to be duplicate
Test Plan:
1. launch enventor
2. add image part twice using ctrl + t or live view item
3. see the images block has an ENVENTOR_EMBEDDED_LOGO.png
Reviewers: Hermet, Jaehyun_Cho, NikaWhite
Differential Revision: https://phab.enlightenment.org/D3851
Summary:
Actually it is unnecessary error log below the first line.
so I skipped the log
Test Plan:
1. launch enventor
2. make an error
3. see the console log in single line
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D3845
Summary:
When mirror mode is toggled, the position of spacer parts in preview is not changed.
So I added the code to update spacer parts.
@T3367
Test Plan:
1. laucnch enventor
2. added the spacer to preview
3. toggle mirror mode more than two times.
4. see the spacer parts whether it is updated or not
Reviewers: Hermet, Jaehyun_Cho, NikaWhite
Differential Revision: https://phab.enlightenment.org/D3835
Summary:
when mirror mode is applied, the live edit item is added to wrong position.
so I added mirror mode checking to show correctly.
@T3368
Test Plan:
1. launcher enventor
2. enable mirror mode
3. add a live edit item to preview
4. check that the position of the item is right
Reviewers: Hermet, Jaehyun_Cho, NikaWhite
Differential Revision: https://phab.enlightenment.org/D3834
Summary: Added new toolbar item to support mirror mode
Test Plan:
1. luanch enventor
2. toggle mirror mode item of toolbar at the left-top or press ctrl + M
3. see the mirror mode working well
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Differential Revision: https://phab.enlightenment.org/D3813
Summary:
If we input the quotation mark("), the code under the mark are changed to gray.
so I changed the limitation from the start of quotation mark to the end of the line.
Test Plan:
1. launch enventor
2. input the quotation mark(") in the middle of the code
3. see the syntax color change range about string syntax color
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D3825
Check if edj file set is finished and do not call edje_edit functions if
edj file set is not finished.
Test Plan:
1. Open edc
2. Modify edc incorrectly (e.g. Remove semicolon)
3. Save edc
4. Open the saved edc
5. Mouse double click "target" in program.
Summary:
In my opinion, the solution can move the position of update_edj_file_internal(vd) in update_edj_file.
However, I added dummy_obj_update only above failure case of edj load.
Test Plan:
1. Run Enventor and Load basic edc file
2. Select all source code with Ctrl+A and remove them with del or backspace.
3. Check the dummy part
Reviewers: Jaehyun_Cho, Hermet
Subscribers: Jaehyun_Cho, Hermet
Differential Revision: https://phab.enlightenment.org/D3808
Summary:
improve the image's template code.
when inserting image's template code,
images block has redundant annotation.
Test Plan:
1. insert image's part using ctrl + t
2. see the images part and check the difference with before
Reviewers: Hermet, Jaehyun_Cho, NikaWhite
Differential Revision: https://phab.enlightenment.org/D3814
Summary:
- When calculating the position of cursor, the code cannot get group information.
So, if we cannot get group information including position, add blocking code.
Test Plan:
1. Open Enventor
2. Remove all code after selecting with Ctrl+a
3. Click any part in edj editor
Reviewers: Hermet, Jaehyun_Cho
Subscribers: Jaehyun_Cho, Hermet
Differential Revision: https://phab.enlightenment.org/D3804
On Windows, new line is represented as "\r\n".
Therefore, '\r' is checked when indented code line is created.
Otherwise, unnecessary newlines are inserted after indentation on
Windows.
Summary:
Current generated part name from the live edit is too unfamiliar with users.
We need to improve for more formal naming rule like,
ex) rect_xxxx
image_xxxx
swallow_xxxx
Test Plan:
1. Open Enventor
2. Add rect, image, swllow, text, textblock, spacer
Reviewers: Hermet, Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: Jaehyun_Cho, Hermet
Differential Revision: https://phab.enlightenment.org/D3793
previously, the button was available even if the inverting animation was going
on. This caused the corruption view size because of context loss.
We could avoid this issue by freezing button when transition is going on.
Skip a group selection callback because it leads the editor cursor jump on to
the group area. But this group updation could be triggered in a various
scenario. The cursor should be jumped only when user clicked a group item
in the genlist.
Do not apply indentation when pasted string does not contain keywords
which cause a new line. (e.g. string not containing ';')
Test Plan:
1. Open basic.edc
2. Copy "default"
3. Paste at the same position.
Summary:
fix the unsafe code like strcat and strcpy.
it is changed to strncpy, strncat
@fix
Reviewers: Hermet, NikaWhite, Jaehyun_Cho
Differential Revision: https://phab.enlightenment.org/D3761
Summary:
if(!(ptr++)) code check current pointer then it is updated next pointer.
so I changed the postfix operator to prefix operator to check next pointer in the condition.
@fix
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D3762
This problem scenario belongs to the image modification by an other process.
If an image size is very huge, live view possibly lost the image monitoring
because of asynchorous file handling.
Here solution is to update images repeatedly for those unexpected case.
@fix T3094
Summary:
there is no null checking condition,
so I added the null checking condition about the return value of elm_entry_entry_get.
@fix
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D3763
Summary:
in error_line_num_highlight, utf8 can be null.
so, I added null checking about it.
@fix
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D3764
Summary:
There is a wrong condition in base_gui.c like if ((w>0) && (w>0)).
The condition compares to same rule.
@fix
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D3767
Summary:
There is a missing return value in edc_navigator.c
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D3768
Summary:
select the random name after inserting live view part or template part.
Test Plan:
1. insert a part using Live View
2. see the selection region of random name of Live View
3. insert a templte using Ctrl + t
4. see the selection region of random name of template
@T3014
Reviewers: Hermet, Jaehyun_Cho, NikaWhite
Differential Revision: https://phab.enlightenment.org/D3743
Summary:
There is a memorizing cursor in wrong position, it cause undo error.
If insert the description template, undo operation is not working correctly.
@fix
Test Plan:
1. press ctrl + t in the part, then insert description part
2. press ctrl + z, undo the code
3. see the normal operation
Reviewers: Hermet, Jaehyun_Cho, NikaWhite
Differential Revision: https://phab.enlightenment.org/D3760
auto save function saves edc file and updates preview by using timer.
auto save timer is applied when entry is changed or redo/undo is done.
auto save timer is cancelled when candidate list or auto complete list
appears.
Previously, "edc,modified" callback is called only if
enventor_object_save() is called.
To call "edc,modified" callback when edc is modified, "edc,modified"
callback is called in edit_save().
Uses the autocomplete context parser for recognizing keywords
with the same names in different contexts. For example:
the attributes "min" and "max" for a description context
should be integer values in range from 0 to 1000; but for a
"text" context those attributes should be boolean.
Curently add recognition for a "min" and "max" attributes in the "text" content.
@fix T2712
Set edc changed in template_insert() to save template insertion.
Test Plan:
1. write a part. (e.g. rect { "rect2";)
2. insert desc template (ctrl + t)
2. close edc
When edc is closed without saving after inserting template, warning
popup should appear.
Set edc changed in edit_text_insert() to save text insertion.
Test Plan:
1. open find/replace (ctrl + f)
2. write strings in "Find:" and "Replace with:"
3. push "Replace all"
4. close edc
When edc is closed without saving after replacing a string, warning
popup should appear.
This reverts commit a2e8ea3028.
When a part is inserted by LiveEdit or modified by candidate popup, edc
file is saved automatically.
Conflicts:
src/bin/file_mgr.c
Summary:
To make it easier for user to modify color,
I added color modification feature such as colorselector,
color view, color inputs and priority color lists into the ctxpopup.
Test Plan:
1. click the 'color' keyword
2. see the color components of ctxpopup
3. change the color using the components
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Differential Revision: https://phab.enlightenment.org/D3726
Part state of new group is set before new group is loaded into layout.
So default part state of new group is displayed instead of selected part
state.
To fix this issue, part state of new group is set after new group is
loaded into layout.
Part of new group is highlighted before new group is loaded into layout.
So after loading new group, part of new group is not highlighted.
To fix this issue, part of new group is highlighted after new group is
loaded into layout.
Part name list of new group is set before new group is loaded into
layout. So part name list of new group is not set and "part,clicked"
signal callback for each part is not called.
To fix this issue, part name list of new group is set after new group is
loaded into layout.
Dummy swallow of new group is created before new group is loaded into
layout. So dummy swallow of new group is not displayed.
To fix this issue, dummy swallow is created after new group is loaded
into layout.
This feature is useful for small number of developers.
From the point of maintenance view, reverting this feature is better.
This reverts commit f391c03be0.
Checking the string from start till cursor position is empty.
And in case if this range is empty - formatted text will be
inserted above the current line.
Monospaced fonts are identified by fontconfig APIs.
(i.e. Monospaced fonts have a spacing value with 100.)
Therefore, showing monospaced fonts are available only if fontconfig is
installed.
When user undo or redo change, the edc file will be recompiled and the
live view will be updated. There are two flow: in case if the change is buildable
(i.e. the edc file was builded sucessfuly, when this change happened)
edc file will be recompiled. In case when change marked as unbilduable -
nothing will happen.
@T3051
Summary:
When copy & paste in markup text mode, elm_entry does not support to close markup text.
In enventor the feature cause the color changes about the pasted text.
so I applied the plain text mode to prevent color changes when some text are pasted.
Test Plan
1. copy some text
2. paste anywhere
3. see the color of the text whether there are color changes or not
Reviewers: Hermet, Jaehyun_Cho, NikaWhite
Differential Revision: https://phab.enlightenment.org/D3717
Summary: Set the cusor region of part, when selecting in live editor
Test Plan:
1. Open the enventor and load a sample
2. Select a part in live editor
Reviewers: Jaehyun_Cho, Hermet
Subscribers: Jaehyun_Cho, Hermet
Differential Revision: https://phab.enlightenment.org/D3690
Summary:
removed the animator creation when mouse double click in console box.
If use animator, there can be unexpected behavior like selection region is deleted when long script is loaded.
@fix
Reviewers: Hermet, Jaehyun_Cho, NikaWhite
Differential Revision: https://phab.enlightenment.org/D3714
When an edc text is newly loaded, the edc text is indendted if its
indentation is not correct.
The indented text creation function, indent_text_create(), utilizes
the logic of indent_text_auto_format().
<Test Case>
1. Copy "description { "default";" in basic.edc.
2. Paste
<Test Result>
Previously, a new line is inserted between "description {" and
""default";".
Now, the copied text is pasted.
Previously, utf8 is set into textblock in copy&paste.
Now, markup is set into textblock in copy&paste.
<Test Case>
1. Copy "if (A && B) set_int(num, 1);"
2. Paste
<Test Result>
Previously, "if (A " is pasted.
Now, the copied text is pasted.
Summary:
Summary
There is no back button in menu and about screens.
So user cannot close the screens without 'escape key'.
To make more efficient I added back button on the screens.
Test Plan:
1. press 'esc' key
2. see the back button on the screen
3. prees 'F2' key
4. see the back button on the screen
Reviewers: Jaehyun_Cho, NikaWhite, Hermet
Differential Revision: https://phab.enlightenment.org/D3705