Giter Site home page Giter Site logo

obsidian-studiosinc / ecrire Goto Github PK

View Code? Open in Web Editor NEW
7.0 7.0 1.0 631 KB

General purpose graphical Text Editor built on the Enlightenment Foundation Libraries (EFL)

License: GNU General Public License v3.0

CMake 17.60% C 82.21% Shell 0.19%
desktop editor efl enlightenment text

ecrire's People

Contributors

bjacquin avatar borisfaure avatar godfath3r avatar happyaron avatar imfine98 avatar kabeerkhan avatar peter2121 avatar seoz avatar tasn avatar vtorri avatar w-jablonski avatar wltjr avatar zmike avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

peter2121

ecrire's Issues

Saved new file not added to recent files

When saving a new file, not one already opened. Ecrire fails to add the file to the recent files. Likely effects save as with an existing document just the same.

Paste on the bar doesn't work reliably.

Start a new ecrire window > type a word >select it with the mouse > copy or cut > the paste option doesn't get highlighted.
If you hit enter some times and paste something with rclick>paste then it gets highlighted.

I've also seen it add characters at the end of a paste. Weird.

[efl + meson < 0.52.0] /usr/lib/libefreet_mime.so.1: error adding symbols: DSO missing from command line

Description

Description of issue
ninja package error:

/usr/bin/ld: src/bin/CMakeFiles/ecrire.dir/main.c.o: undefined reference to symbol 'efreet_mime_type_get'
//usr/local/lib/x86_64-linux-gnu/libefreet_mime.so.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

Steps to reproduce

...

System information
  • EFL Version git
  • E Version git
  • X or Wayland : wayland

Crash when closing with a file

Description

Description of issue
Crash when closing ecrire with text displayed

Steps to reproduce
  1. Open a file
  2. CLose ecrire from the X on the top bar
System information
  • EFL Version = 1.21.0
  • E Version = 0.22.4
  • X or Wayland = wayland

BT:

(gdb) bt
#0  0x00007f2270686de4 in eina_unicode_utf8_next_get (iindex=0x7ffdbcab5c14, buf=0x7f22666b7000 <error: Cannot access memory at address 0x7f22666b7000>) at ../src/lib/eina/eina_inline_unicode.x:43
#1  0x00007f2270686de4 in _elm_code_widget_line_text_column_width_to_position (obj=0x400000176875, pd=<optimized out>, line=<optimized out>, position=16) at lib/elementary/elm_code_widget_text.c:138
#2  0x00007f2270686f01 in _elm_code_widget_line_text_column_width_get (obj=<optimized out>, pd=<optimized out>, line=<optimized out>) at lib/elementary/elm_code_widget_text.c:157
#3  0x00007f22706819d4 in elm_obj_code_widget_line_text_column_width_get (obj=obj@entry=0x400000176875, line=0x5578984f0d00) at lib/elementary/elm_code_widget.eo.c:172
#4  0x00007f2270684036 in elm_code_widget_line_text_column_width_get (obj=obj@entry=0x400000176875, line=<optimized out>) at lib/elementary/elm_code_widget.eo.c:522
#5  0x00007f2270685481 in _elm_code_widget_resize (widget=widget@entry=0x400000176875, newline=newline@entry=0x0) at lib/elementary/elm_code_widget.c:2037
#6  0x00007f2270685ffc in _elm_code_widget_fill_update (widget=widget@entry=0x400000176875, first_row=1, last_row=12, newline=newline@entry=0x0) at lib/elementary/elm_code_widget.c:512
#7  0x00007f22706860cb in _elm_code_widget_refresh (widget=0x400000176875, line=0x0) at lib/elementary/elm_code_widget.c:551
#8  0x00007f226c4a7797 in _event_callback_call (legacy_compare=1 '\001', event_info=<optimized out>, desc=0x557898328200, pd=0x55789833d0c0, obj_id=<optimized out>) at lib/eo/eo_base_class.c:1698
#9  0x00007f226c4a7797 in _efl_object_event_callback_legacy_call (obj_id=<optimized out>, pd=0x55789833d0c0, desc=0x557898328200, event_info=<optimized out>) at lib/eo/eo_base_class.c:1771
#10 0x00007f226c4a2568 in efl_event_callback_legacy_call (obj=0x400000176875, desc=0x557898328200, event_info=0x0) at lib/eo/eo_base_class.c:1774
#11 0x00007f226c4a2568 in efl_event_callback_legacy_call (obj=0x400000176875, desc=0x557898328200, event_info=0x0) at lib/eo/eo_base_class.c:1774
#12 0x00007f226c4a7d2e in _event_callback_call (legacy_compare=0 '\000', event_info=<optimized out>, desc=0x7f2270929ac0 <_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED>, pd=0x55789833d0c0, obj_id=<optimized out>)
    at lib/eo/eo_base_class.c:1698
#13 0x00007f226c4a7d2e in _efl_object_event_callback_call (obj_id=<optimized out>, pd=0x55789833d0c0, desc=0x7f2270929ac0 <_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED>, event_info=<optimized out>)
    at lib/eo/eo_base_class.c:1759
#14 0x00007f226c4a2478 in efl_event_callback_call (obj=0x400000176875, desc=0x7f2270929ac0 <_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED>, event_info=0x0) at lib/eo/eo_base_class.c:1762
#15 0x00007f226c4a2478 in efl_event_callback_call (obj=0x400000176875, desc=0x7f2270929ac0 <_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED>, event_info=0x0) at lib/eo/eo_base_class.c:1762
#16 0x00007f227081d6d0 in efl_ui_focus_object_focus_set (obj=0x400000176875, focus=focus@entry=0 '\000') at lib/elementary/efl_ui_focus_object.eo.c:17
#17 0x00007f22707db135 in _efl_ui_widget_efl_ui_focus_object_focus_set (obj=0x400000176875, pd=<optimized out>, focus=<optimized out>) at lib/elementary/efl_ui_widget.c:5696
#18 0x00007f227081d6d0 in efl_ui_focus_object_focus_set (obj=0x400000176875, focus=focus@entry=0 '\000') at lib/elementary/efl_ui_focus_object.eo.c:17
#19 0x00007f2270819ed5 in _efl_ui_focus_manager_calc_unregister (obj=0x400000010edc, pd=0x557897dac420, child=<optimized out>) at lib/elementary/efl_ui_focus_manager_calc.c:762
#20 0x00007f22708187d0 in efl_ui_focus_manager_calc_unregister (obj=0x4000000066b2, child=child@entry=0x400000176875) at lib/elementary/efl_ui_focus_manager_calc.eo.c:42
#21 0x00007f22707cdce9 in _efl_ui_widget_focus_state_apply (obj=0x400000176875, pd=<optimized out>, current_state=..., configured_state=0x7ffdbcab6420, redirect=0x0) at lib/elementary/efl_ui_widget.c:456
#22 0x00007f22707cd3be in efl_ui_widget_focus_state_apply (obj=obj@entry=0x400000176875, current_state=..., configured_state=configured_state@entry=0x7ffdbcab6420, redirect=redirect@entry=0x0)
    at lib/elementary/efl_ui_widget.eo.c:186
#23 0x00007f22707d55c3 in _focus_state_eval (want_full=<optimized out>, should=1 '\001', pd=0x55789833d2d0, obj=0x400000176875) at lib/elementary/efl_ui_widget.c:539
#24 0x00007f22707d55c3 in _full_eval (obj=0x400000176875, pd=0x55789833d2d0) at lib/elementary/efl_ui_widget.c:642
#25 0x00007f226c4a7d2e in _event_callback_call (legacy_compare=0 '\000', event_info=<optimized out>, desc=0x7f2270929ab0 <_EFL_UI_FOCUS_OBJECT_EVENT_MANAGER_CHANGED>, pd=0x557898330dc0, obj_id=<optimized out>)
    at lib/eo/eo_base_class.c:1698
#26 0x00007f226c4a7d2e in _efl_object_event_callback_call (obj_id=<optimized out>, pd=0x557898330dc0, desc=0x7f2270929ab0 <_EFL_UI_FOCUS_OBJECT_EVENT_MANAGER_CHANGED>, event_info=<optimized out>)
    at lib/eo/eo_base_class.c:1759
#27 0x00007f226c4a2478 in efl_event_callback_call (obj=0x400000175c72, desc=0x7f2270929ab0 <_EFL_UI_FOCUS_OBJECT_EVENT_MANAGER_CHANGED>, event_info=0x4000000066b2) at lib/eo/eo_base_class.c:1762
#28 0x00007f226c4a2478 in efl_event_callback_call (obj=obj@entry=0x400000175c72, desc=0x7f2270929ab0 <_EFL_UI_FOCUS_OBJECT_EVENT_MANAGER_CHANGED>, event_info=event_info@entry=0x4000000066b2)
    at lib/eo/eo_base_class.c:1762
#29 0x00007f22707d562a in _full_eval (obj=0x400000175c72, pd=0x557898330fd0) at lib/elementary/efl_ui_widget.c:652
#30 0x00007f226c4a7d2e in _event_callback_call (legacy_compare=0 '\000', event_info=<optimized out>, desc=0x7f2270929ab0 <_EFL_UI_FOCUS_OBJECT_EVENT_MANAGER_CHANGED>, pd=0x5578981551f0, obj_id=<optimized out>)
    at lib/eo/eo_base_class.c:1698
#31 0x00007f226c4a7d2e in _efl_object_event_callback_call (obj_id=<optimized out>, pd=0x5578981551f0, desc=0x7f2270929ab0 <_EFL_UI_FOCUS_OBJECT_EVENT_MANAGER_CHANGED>, event_info=<optimized out>)
    at lib/eo/eo_base_class.c:1759
#32 0x00007f226c4a2478 in efl_event_callback_call (obj=0x400000033f68, desc=0x7f2270929ab0 <_EFL_UI_FOCUS_OBJECT_EVENT_MANAGER_CHANGED>, event_info=0x4000000066b2) at lib/eo/eo_base_class.c:1762
#33 0x00007f226c4a2478 in efl_event_callback_call (obj=obj@entry=0x400000033f68, desc=0x7f2270929ab0 <_EFL_UI_FOCUS_OBJECT_EVENT_MANAGER_CHANGED>, event_info=event_info@entry=0x4000000066b2)
    at lib/eo/eo_base_class.c:1762
#34 0x00007f22707d562a in _full_eval (obj=obj@entry=0x400000033f68, pd=pd@entry=0x557898155400) at lib/elementary/efl_ui_widget.c:652
#35 0x00007f22707d59ae in _elm_widget_full_eval_children (obj=obj@entry=0x400000033f68, sd=sd@entry=0x557898155400) at lib/elementary/efl_ui_widget.c:940
#36 0x00007f22707db806 in _efl_ui_widget_efl_gfx_entity_visible_set (obj=0x400000033f68, pd=0x557898155400, vis=0 '\000') at lib/elementary/efl_ui_widget.c:967
#37 0x00007f226c4d5f40 in efl_gfx_entity_visible_set (obj=obj@entry=0x400000033f68, v=v@entry=0 '\000') at ../src/lib/efl/interfaces/efl_gfx_entity.eo.c:15
#38 0x00007f22702b2e8b in _efl_canvas_object_efl_object_invalidate (eo_obj=0x400000033f68, obj=0x557898155240) at lib/evas/canvas/evas_object_main.c:1250
#39 0x00007f226c4a3378 in efl_invalidate (obj=0x400000033f68) at lib/eo/efl_object.eo.c:72
#40 0x00007f226c4a3378 in efl_invalidate (obj=0x400000033f68) at lib/eo/efl_object.eo.c:72
#41 0x00007f226c4a9100 in _efl_invalidate (obj=obj@entry=0x5578981551b0) at lib/eo/eo_base_class.c:171
#42 0x00007f226c4a9968 in _efl_object_parent_set (obj=0x400000033f68, pd=0x5578981551f0, parent_id=0x0) at lib/eo/eo_base_class.c:735
#43 0x00007f226c4a2650 in efl_parent_set (obj=obj@entry=0x400000033f68, parent=parent@entry=0x0) at lib/eo/efl_object.eo.c:12
#44 0x00007f226c4a9a69 in efl_del (obj=0x400000033f68) at lib/eo/eo_base_class.c:687
#45 0x00007f22702b1ee2 in evas_object_del (obj=<optimized out>) at lib/evas/canvas/evas_object_main.c:1043
#46 0x00007f22702c04a6 in _evas_wrap_del (eo=<optimized out>, pd=<optimized out>) at ../src/lib/evas/include/evas_inline.x:362
#47 0x00007f22702c04a6 in _efl_canvas_group_group_members_all_del_internal (o=o@entry=0x557897e69e70) at lib/evas/canvas/evas_object_smart.c:592
#48 0x00007f22702c04f8 in _efl_canvas_group_group_del (eo_obj=<optimized out>, o=0x557897e69e70) at lib/evas/canvas/evas_object_smart.c:823
#49 0x00007f22702bf908 in efl_canvas_group_del (obj=0x400000013ae7) at lib/evas/canvas/evas_object_smart.c:1859
#50 0x00007f22702bf908 in efl_canvas_group_del (obj=obj@entry=0x400000013ae7) at lib/evas/canvas/evas_object_smart.c:1859
#51 0x00007f22702c29e9 in evas_object_smart_del (eo_obj=0x400000013ae7) at lib/evas/canvas/evas_object_smart.c:1293
#52 0x00007f22702b3371 in _efl_canvas_object_efl_object_invalidate (eo_obj=0x400000013ae7, obj=0x557897e69d40) at lib/evas/canvas/evas_object_main.c:1338
#53 0x00007f226c4a3378 in efl_invalidate (obj=0x400000013ae7) at lib/eo/efl_object.eo.c:72
#54 0x00007f226c4a9100 in _efl_invalidate (obj=obj@entry=0x557897e69cb0) at lib/eo/eo_base_class.c:171
#55 0x00007f226c4a9968 in _efl_object_parent_set (obj=0x400000013ae7, pd=0x557897e69cf0, parent_id=0x0) at lib/eo/eo_base_class.c:735
#56 0x00007f226c4a2650 in efl_parent_set (obj=obj@entry=0x400000013ae7, parent=parent@entry=0x0) at lib/eo/efl_object.eo.c:12
#57 0x00007f226c4a9a69 in efl_del (obj=0x400000013ae7) at lib/eo/eo_base_class.c:687
#58 0x00007f22702b1ee2 in evas_object_del (obj=<optimized out>) at lib/evas/canvas/evas_object_main.c:1043
#59 0x00007f22707ebc67 in _efl_ui_win_efl_canvas_group_group_del (obj=0x4000000066b2, sd=0x557897c8bba0) at lib/elementary/efl_ui_win.c:2878
#60 0x00007f22702bf908 in efl_canvas_group_del (obj=obj@entry=0x4000000066b2) at lib/evas/canvas/evas_object_smart.c:1859
#61 0x00007f22702c29e9 in evas_object_smart_del (eo_obj=0x4000000066b2) at lib/evas/canvas/evas_object_smart.c:1293
#62 0x00007f22702b3371 in _efl_canvas_object_efl_object_invalidate (eo_obj=0x4000000066b2, obj=0x557897c8b840) at lib/evas/canvas/evas_object_main.c:1338
#63 0x00007f226c4a3378 in efl_invalidate (obj=0x4000000066b2) at lib/eo/efl_object.eo.c:72
#64 0x00007f226c4a3378 in efl_invalidate (obj=0x4000000066b2) at lib/eo/efl_object.eo.c:72
#65 0x00007f226c4a9100 in _efl_invalidate (obj=obj@entry=0x557897c8b7b0) at lib/eo/eo_base_class.c:171
#66 0x00007f226c4a9968 in _efl_object_parent_set (obj=0x4000000066b2, pd=0x557897c8b7f0, parent_id=0x0) at lib/eo/eo_base_class.c:735
#67 0x00007f226c4a2650 in efl_parent_set (obj=obj@entry=0x4000000066b2, parent=parent@entry=0x0) at lib/eo/efl_object.eo.c:12
#68 0x00007f226c4a9a69 in efl_del (obj=0x4000000066b2) at lib/eo/eo_base_class.c:687
#69 0x00007f22707eea14 in _elm_win_frame_cb_close (data=<optimized out>, obj=<optimized out>, sig=<optimized out>, source=<optimized out>) at lib/elementary/efl_ui_win.c:4357
#70 0x00007f226f53ecb4 in _edje_emit_cb (prop=<optimized out>, data=0x557898277940, src=0x557897ea1680 "elm", sig=0x557897ecaebc "elm,action,close", ed=0x557897ed5120) at lib/edje/edje_program.c:1670
#71 0x00007f226f53ecb4 in _edje_emit_handle (ed=0x557897ed5120, sig=0x557897ecaebc "elm,action,close", src=0x557897ea1680 "elm", sdata=0x557898277940, prop=0 '\000') at lib/edje/edje_program.c:1589
#72 0x00007f226f53909f in _edje_message_queue_process () at lib/edje/edje_message_queue.c:886
#73 0x00007f226f53927a in _edje_message_queue_process () at lib/edje/edje_message_queue.c:852
#74 0x00007f226f53927a in _edje_job (data=<optimized out>) at lib/edje/edje_message_queue.c:260
#75 0x00007f22705211eb in _ecore_job_event_handler (data=<optimized out>, type=<optimized out>, ev=<optimized out>) at lib/ecore/ecore_job.c:98
#76 0x00007f2270526579 in _ecore_event_message_handler_efl_loop_message_handler_message_call (obj=0x40000000169e, pd=0x557897a2e2a0, message=0x4000002d8265) at lib/ecore/ecore_event_message_handler.c:359
#77 0x00007f227052d6e0 in efl_loop_message_handler_message_call (obj=0x40000000169e, message=0x4000002d8265) at lib/ecore/efl_loop_message_handler.eo.c:14
#78 0x00007f227052964a in _efl_loop_message_process (obj=<optimized out>, pd=0x557897a270b0) at lib/ecore/efl_loop.c:633
#79 0x00007f2270528248 in efl_loop_message_process (obj=obj@entry=0x400000000299) at lib/ecore/efl_loop.c:663
#80 0x00007f227052327e in _ecore_main_loop_iterate_internal (obj=obj@entry=0x400000000299, pd=pd@entry=0x557897a270b0, once_only=once_only@entry=0) at lib/ecore/ecore_main.c:2458
#81 0x00007f227052397d in _ecore_main_loop_begin (obj=0x400000000299, pd=pd@entry=0x557897a270b0) at lib/ecore/ecore_main.c:1191
#82 0x00007f227052957a in _efl_loop_begin (obj=<optimized out>, pd=0x557897a270b0) at lib/ecore/efl_loop.c:83
#83 0x00007f22705284f8 in efl_loop_begin (obj=0x400000000299) at lib/ecore/efl_loop.eo.c:28
#84 0x00007f2270523a19 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:1274
#85 0x00005578960d62cf in elm_main ()
#86 0x00005578960d404e in  ()
#87 0x00007f227005d223 in __libc_start_main () at /usr/lib/libc.so.6
#88 0x00005578960d408e in _start ()

Discussion here > https://phab.enlightenment.org/T7353 most likely an ecrire issue.

Make input pointer go in the input field when opening or saving at

Description

As the title suggests. When you click open and/or save as the pointer to type the name of the file isn't at the input field of the window that pops open.

Steps to reproduce
  1. Type something
  2. Click Save as
  3. You have to click on the input field to give the file a name
    ...
System information
  • EFL Version
    Stable and git
  • E Version
    Stable and git
  • X or Wayland
    Wayland

Parallel compiling fails

Fails to build with parallel jobs, requires make -j1 for now. It tries to build the code before the language translations, causing the build to fail.

Some commands are disabled

Description

On startup of ecrire some commands (menu and toolbar) are disabled. They are enabled only if some keyboard events pass to the text area. If I just paste any text - the commands "Save" and "Save As" are unavailable, so I cannot save my pasted text.
BTW, I don't see any reason of disabling "Close" toolbar button on startup.

Steps to reproduce
  1. Start ecrire
  2. Click inside text area to get focus
  3. Paste some text
  4. Try to save text
System information
  • EFL Version: GIT
  • E Version: GIT
  • X or Wayland: X

Build issue on efl 1.23.0

Using cmake + gnu make

$ makepkg -scC
==> Making package: ecrire-git 0.3.3.586.7976d82-1 (Thu 10 Oct 2019 08:38:15 AM EDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Cloning ecrire git repo...
Cloning into bare repository '/home/jamesk/nulogicos-PKGBUILD/ecrire-git/ecrire'...
remote: Enumerating objects: 3037, done.
remote: Total 3037 (delta 0), reused 0 (delta 0), pack-reused 3037
Receiving objects: 100% (3037/3037), 600.76 KiB | 2.97 MiB/s, done.
Resolving deltas: 100% (2011/2011), done.
==> Validating source files with sha256sums...
    ecrire ... Skipped
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Creating working copy of ecrire git repo...
Cloning into 'ecrire'...
done.
==> Starting pkgver()...
==> Updated version: ecrire-git 0.3.4.590.0d254f8-1
==> Starting build()...
-- The C compiler identification is GNU 9.1.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.6.3") 
-- Found eo: /usr/lib/libeo.so  
-- Found eina: /usr/lib/libeina.so  
-- Found eet: /usr/lib/libeet.so  
-- Found evas: /usr/lib/libevas.so  
-- Found ecore: /usr/lib/libecore.so  
-- Found ecore_input: /usr/lib/libecore_input.so  
-- Found efl: /usr/lib/libefl.so  
-- Found edje: /usr/lib/libm.so  
-- Found efreet: /usr/lib/libefreet.so  
-- Found efreet_mime: /usr/lib/libm.so  
-- Found elementary: /usr/lib/libelementary.so  
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jamesk/nulogicos-PKGBUILD/ecrire-git/src/ecrire
Scanning dependencies of target ecrire
[ 14%] Building C object src/bin/CMakeFiles/ecrire.dir/main.c.o
In function ‘_set_path’,
    inlined from ‘_open_file’ at /home/jamesk/nulogicos-PKGBUILD/ecrire-git/src/ecrire/src/bin/main.c:534:7:
/home/jamesk/nulogicos-PKGBUILD/ecrire-git/src/ecrire/src/bin/main.c:211:7: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  211 |       strncpy(f,file,len);
      |       ^~~~~~~~~~~~~~~~~~~
/home/jamesk/nulogicos-PKGBUILD/ecrire-git/src/ecrire/src/bin/main.c: In function ‘_open_file’:
/home/jamesk/nulogicos-PKGBUILD/ecrire-git/src/ecrire/src/bin/main.c:207:9: note: length computed here
  207 |   len = strlen(file)+1;
      |         ^~~~~~~~~~~~
[ 28%] Building C object src/bin/CMakeFiles/ecrire.dir/cfg.c.o
[ 42%] Building C object src/bin/CMakeFiles/ecrire.dir/ui/file_related.c.o
[ 57%] Building C object src/bin/CMakeFiles/ecrire.dir/ui/search_dialog.c.o
[ 71%] Building C object src/bin/CMakeFiles/ecrire.dir/ui/settings_dialog.c.o
[ 85%] Building C object src/bin/CMakeFiles/ecrire.dir/ui/alerts.c.o
[100%] Linking C executable ecrire
/usr/bin/ld: CMakeFiles/ecrire.dir/main.c.o: undefined reference to symbol 'efreet_mime_type_get'
/usr/bin/ld: /usr/lib/libefreet_mime.so.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [src/bin/CMakeFiles/ecrire.dir/build.make:175: src/bin/ecrire] Error 1
make[1]: *** [CMakeFiles/Makefile2:153: src/bin/CMakeFiles/ecrire.dir/all] Error 2
make: *** [Makefile:152: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...

Save and Save As don't stay highlighted after a second change

Description

Description of issue
As the title suggests

Steps to reproduce
  1. Open a file
  2. Change something
  3. Save highlights > Click it
  4. Change something again
  5. Save doesn't get highlighted.
    ...
System information
  • EFL Version = 1.21
  • E Version = 0.22.4
  • X or Wayland = wayland

Crash on deleting spaces

When editing a line that has too many spaces before the first character with either the delete key, or with the backspace key, crashes ecrire with no warning and on random number of deletes.

Background removal caused non adjustable transparent bottom box

Description

In fixing issue #29 removing the background caused the bottom box to become transparent. Seems a background is needed, but the previous way was not respecting the alpha value. It was never transparent, which caused it to become white. Inversion switched that to black, but was unable to get any transparency. Maybe an issue in EFL, not sure.

System information
  • EFL 1.20 or 1.21

Resizing causes text selection

To rep:
Have a file with multiple lines of text.
Use the bottom right corner to resize the window.
Move the pointer in the text area
It selects the text.

ecrire-git efl 1.20.6& git

Ecrire fails with latest git

Description

Description of issue
As the title suggests. It doesn't start neither compiles.

Steps to reproduce
  1. Try to compile
  2. Try to run it
System information
  • EFL Version > git
  • E Version > git
  • X or Wayland > wayland

can't build

I'm getting:
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
EDJE_LIBRARY (ADVANCED)
linked by target "ecrire" in directory /build/ecrire-git/src/ecrire/src/bin
ELEMENTARY_LIBRARY (ADVANCED)
linked by target "ecrire" in directory /build/ecrire-git/src/ecrire/src/bin

-- Configuring incomplete, errors occurred!
See also "/build/ecrire-git/src/ecrire/CMakeFiles/CMakeOutput.log".

Crash with the file browser when empty selection is active.

to rep
Open ecrire and resize the window. move the mouse cursor up (passing through the first line in order to select it -see the other bug) and hit open. Hit ok. It will crash with:

(gdb) bt
#0  0x004d49c2 in _open_file ()
#1  0x004d4c62 in _fs_open_done ()
#2  0x004d74d6 in _cleaning_cb ()
#3  0xb779670f in _eo_evas_smart_cb (data=0x1e59df0, event=0xbf98330c) at lib/evas/canvas/evas_object_smart.c:78
#4  0xb7f1f912 in _event_callback_call (legacy_compare=0 '\000', event_info=0xc6c708, desc=0x1dff2c0, pd=0x1816f68, obj_id=0x8002ae81) at lib/eo/eo_base_class.c:1545
#5  0xb7f1f912 in _efl_object_event_callback_call (obj_id=0x8002ae81, pd=0x1816f68, desc=0x1dff2c0, event_info=0xc6c708) at lib/eo/eo_base_class.c:1606
#6  0xb7f19dd6 in efl_event_callback_call (obj=0x8002ae81, desc=0x1dff2c0, event_info=0xc6c708) at lib/eo/eo_base_class.c:1609
#7  0xb7f19dd6 in efl_event_callback_call (obj=0x8002ae81, desc=0x1dff2c0, event_info=0xc6c708) at lib/eo/eo_base_class.c:1609
#8  0xb7b04fde in _event_to_legacy_call (event_info=, evt_desc=0xb7e5aba8 , obj=0x8002ae81) at lib/elementary/elc_fileselector.c:135
#9  0xb7b04fde in _model_event_call (obj=0x8002ae81, evt_desc=0xb7e5aba8 , model=0x8003ccc1, path=0xc6c708 "/home/toliz")
    at lib/elementary/elc_fileselector.c:141
#10 0xb7b083e1 in _ok (data=0x8002ae81, event=0xbf98350c) at lib/elementary/elc_fileselector.c:1365
#11 0xb7f1e62e in _event_callback_call (legacy_compare=1 '\001', event_info=0x0, desc=0xb6844a2c , pd=0x1e3f798, obj_id=0x8003a067)
    at lib/eo/eo_base_class.c:1545
#12 0xb7f1e62e in _efl_object_event_callback_legacy_call (obj_id=0x8003a067, pd=0x1e3f798, desc=0xb6844a2c , event_info=0x0) at lib/eo/eo_base_class.c:1618
#13 0xb7f19f36 in efl_event_callback_legacy_call (obj=0x8003a067, desc=0xb6844a2c , event_info=0x0) at lib/eo/eo_base_class.c:1621
#14 0xb7f19f36 in efl_event_callback_legacy_call (obj=0x8003a067, desc=0xb6844a2c , event_info=0x0) at lib/eo/eo_base_class.c:1621
#15 0xb7b401a3 in _activate (obj=0x8003a067) at lib/elementary/efl_ui_button.c:73
#16 0xb6ffa8bc in edje_match_callback_exec_check_finals (prop=, ed=0x1e3fc08, source=0x124a160 "elm", sig=0x12ccdd8 "elm,action,click", source_states=, signal_states=, matches=0x1375470, ssp=0xd71790) at lib/edje/edje_match.c:556
#17 0xb6ffa8bc in edje_match_callback_exec (ssp=0xd71790, matches=0x1375470, sig=0x12ccdd8 "elm,action,click", source=0x124a160 "elm", ed=0x1e3fc08, prop=0 '\000')
    at lib/edje/edje_match.c:711
#18 0xb7001b9a in _edje_emit_cb (prop=0 '\000', data=0x0, src=0x124a160 "elm", sig=0x12ccdd8 "elm,action,click", ed=0x1e3fc08) at lib/edje/edje_program.c:1592
#19 0xb7001b9a in _edje_emit_handle (ed=0x1e3fc08, sig=0x12ccdd8 "elm,action,click", src=0x124a160 "elm", sdata=0x0, prop=0 '\000') at lib/edje/edje_program.c:1544
#20 0xb6ffbdd5 in _edje_message_process (em=0x14205c0) at lib/edje/edje_message_queue.c:790
#21 0xb6ffc2e8 in _edje_message_queue_process () at lib/edje/edje_message_queue.c:893
#22 0xb6ffc4cc in _edje_message_queue_process () at lib/edje/edje_message_queue.c:859
#23 0xb6ffc4cc in _edje_job (data=0x0) at lib/edje/edje_message_queue.c:260
#24 0xb7a42aad in _ecore_job_event_handler (data=0x0, type=16, ev=0x139cf80) at lib/ecore/ecore_job.c:98
#25 0xb7a3e266 in _ecore_call_handler_cb (event=, type=, data=, func=) at lib/ecore/ecore_private.h:331
#26 0xb7a3e266 in _ecore_event_call () at lib/ecore/ecore_events.c:629
#27 0xb7a46e47 in _ecore_main_loop_iterate_internal (once_only=once_only@entry=0) at lib/ecore/ecore_main.c:2408
#28 0xb7a47277 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:1308
#29 0x004d6e88 in elm_main ()
#30 0x004d6f18 in main ()
(gdb)

elm_code: First character being bold when using line numbers < 10 lines

A bug in elm_code causing the first letter of some or all lines to be bold. This is related to the line numbers. Which the margin also seems to change size, and is a bit wonky there.

shot-2017-11-11_12-31-37
shot-2017-11-11_12-29-48
shot-2017-11-11_12-30-23

More than 10 lines it seems to go away. Not able to replicate >= 10 lines
shot-2017-11-11_12-30-34

The margin should not change and numbers be right aligned for consistency. If left aligned properly spaced.
shot-2017-11-11_12-33-42

Problem of transition effect on file open

Description

When the "Animate open" option is active - it is impossible to open file from command line. Probably, at the moment of calling elm_transit_go function the ecrire window is not completely initialized.

Steps to reproduce
  1. Start ecrire
  2. Activate option "Animate open"
  3. Close ecrire
  4. Open file from command line with ecrire:
    ecrire test.txt

When ecrire is already started, the file can be open correctly.

System information
  • EFL Version: GIT
  • E Version: GIT
  • X or Wayland: X

The issue can be reproduced with last releases of EFL and E too.

elm_code: Unable to scroll right for text selection of long lines

When a line of text is longer than the horizontal size of Ecrire's window - the horizontal scroll automatically occurs on 'End' key pressing. But when the 'Shift' key is pressed in the same time (to select the text till the end of the line) - there is no horizontal scroll. The whole line is selected, but the beginning of the line is still shown.
Idem for the vertical scroll - going down (with 'PgDown' for example) and pressing 'Shift' at the same time, blocks scrolling down.

Problem with copy/paste buffer

When I paste something to Ecrire from another application (for example, from Firefox) and then close Ecrire - the source application (Firefox) craches. Sometimes, another application craches too (Thunderbird). I think that the management of copy/paste buffer in Ecrire is not correct, so it frees a memory region, used by another application.

No focus on startup

Description

There is no focus inside text area on startup. If I try to enter something on my keyboard or press Ctrl-V to paste any text - nothing happens. I must click inside text area, then it gets focus and text can be entered inside.

Steps to reproduce
  1. Start ecrire
  2. Try to input some text
System information
  • EFL Version: GIT
  • E Version: GIT
  • X or Wayland: X

Duplicate entries in recent files

Duplicate entries are recorded in recent files. Which is frustrating as the code is doing.

if(!eina_list_data_find(_ent_cfg->recent,file))

Which for some reason is failing to properly compare the same data. Likely a bug in usage, but could be a bug in list_data_find, but would be odd. May need to change the comparison from ! to == or !=.

Refactor code to alert if need saving without both main menu and toolbar

Description

The present logic for alerting on close of a modified document relies on boolean checks from either main menu or toolbar. If neither are present, the conditionals fail and there is no alert to save or discard the modified document.

Steps to reproduce
  1. Open ecrire with or without a document
  2. Go to settings
  3. Uncheck both main menu and toolbar
  4. Modify the document
  5. Close the window

There is no alert the document was modified.

Add tabs and the ability to show them side by side.

Feature request. As the title suggests. Making it possible to have 2-3 documents open side by side makes it easier to compare/copy/edit/whatever.

Also some kind of diff option between the open docs could come handy.

Crash on close

Description

Description of issue

App crashes on close

Steps to reproduce
  1. Open ecrire
  2. Type something
  3. Close from the X on the top bar
  4. Hit discard.
System information
  • EFL Version = git
  • E Version = git
  • X or Wayland = Wayland

elm_code: 100% CPU/Memory on large files

Tried ecrire file.txt from the command line. Not sure if this is because of the size of the files but here goes:

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `ecrire fgdgda.txt'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0xb73dfe43 in eina_unicode_utf8_next_get (buf=0x23ce <error: Cannot access memory at address 0x23ce>, iindex=0xbfdbc50c) at ../src/lib/eina/eina_inline_unicode.x:43
43         if ((d = buf[ind++]) == 0) return 0;
[Current thread is 1 (Thread 0xb56fad00 (LWP 18306))]
(gdb) bt
#0  0xb73dfe43 in eina_unicode_utf8_next_get (buf=0x23ce <error: Cannot access memory at address 0x23ce>, iindex=0xbfdbc50c) at ../src/lib/eina/eina_inline_unicode.x:43
#1  0xb73e5c54 in _elm_code_widget_line_text_column_width_to_position (obj=0x80006e54, pd=0xa137ca0, line=0xa260c80, position=67) at lib/elementary/elm_code_widget_text.c:136
#2  0xb73e5cd6 in _elm_code_widget_line_text_column_width_get (obj=0x80006e54, pd=0xa137ca0, line=0xa260c80) at lib/elementary/elm_code_widget_text.c:155
#3  0xb73e968f in elm_obj_code_widget_line_text_column_width_get (obj=0x80006e54, line=0xa260c80) at lib/elementary/elm_code_widget.eo.c:154
#4  0xb73ea835 in elm_code_widget_line_text_column_width_get (obj=0x80006e54, line=0xa260c80) at lib/elementary/elm_code_widget.eo.c:491
#5  0xb73e042e in _elm_code_widget_fill_line_tokens (widget=0x80006e54, cells=0xa26ed28, count=129, line=0xa260c80) at lib/elementary/elm_code_widget.c:175
#6  0xb73e0b7b in _elm_code_widget_fill_line (widget=0x80006e54, line=0xa260c80) at lib/elementary/elm_code_widget.c:349
#7  0xb73e0e7d in _elm_code_widget_fill_range (widget=0x80006e54, pd=0xa137ca0, first_row=1, last_row=29, newline=0xa25ee90) at lib/elementary/elm_code_widget.c:411
#8  0xb73e0ee5 in _elm_code_widget_fill_update (widget=0x80006e54, first_row=1, last_row=29, newline=0xa25ee90) at lib/elementary/elm_code_widget.c:423
#9  0xb73e1065 in _elm_code_widget_refresh (widget=0x80006e54, line=0xa25ee90) at lib/elementary/elm_code_widget.c:459
#10 0xb73e1100 in _elm_code_widget_line_cb (data=0x80006e54, event=0xbfdbc7ac) at lib/elementary/elm_code_widget.c:481
#11 0xb77500ba in _event_callback_call (obj_id=0x80006e54, pd=0xa137a58, desc=0xb769f70c <ELM_CODE_EVENT_LINE_LOAD_DONE>, event_info=0xa25ee90, legacy_compare=1 '\001') at lib/eo/eo_base_class.c:1496
#12 0xb77503ee in _efl_object_event_callback_legacy_call (obj_id=0x80006e54, pd=0xa137a58, desc=0xb769f70c <ELM_CODE_EVENT_LINE_LOAD_DONE>, event_info=0xa25ee90) at lib/eo/eo_base_class.c:1569
#13 0xb77504be in efl_event_callback_legacy_call (obj=0x80006e54, desc=0xb769f70c <ELM_CODE_EVENT_LINE_LOAD_DONE>, event_info=0xa25ee90) at lib/eo/eo_base_class.c:1572
#14 0xb7008d0c in _efl_canvas_object_efl_object_event_callback_legacy_call (eo_obj=0x80006e54, obj=0xa137a80, desc=0xb769f70c <ELM_CODE_EVENT_LINE_LOAD_DONE>, event_info=0xa25ee90) at lib/evas/canvas/evas_object_main.c:993
#15 0xb77504be in efl_event_callback_legacy_call (obj=0x80006e54, desc=0xb769f70c <ELM_CODE_EVENT_LINE_LOAD_DONE>, event_info=0xa25ee90) at lib/eo/eo_base_class.c:1572
#16 0xb73eb1be in elm_code_callback_fire (code=0xa143ef8, signal=0xb769f70c <ELM_CODE_EVENT_LINE_LOAD_DONE>, data=0xa25ee90) at lib/elementary/elm_code.c:61
#17 0xb73dd27b in _elm_code_file_line_insert_data (file=0xa129f60, content=0xaa012809 <error: Cannot access memory at address 0xaa012809>, length=43, row=29, mapped=1 '\001', data=0x0) at lib/elementary/elm_code_file.c:69
#18 0xb73dd572 in elm_code_file_open (code=0xa143ef8, path=0x9c22b18 "fgdgda.txt") at lib/elementary/elm_code_file.c:153
#19 0x0804b7f0 in _start ()
(gdb)

Text selection doesn't happen if you click outside the text lines

Description

Description of issue
You click outside the lines of text and moving the pointer to the lines of text doesn't turn them blue.

Steps to reproduce
  1. Open a file with multiple text lines.
  2. Click outside (below) the last text line and drag your cursor to select the text
  3. Nothing happens.
    ...
System information
  • EFL Version = 1.20.7 & git
  • E Version = 0.22.1 & git
  • Wayland

Remove files from "Recent Files" that no longer exist

Description

Attempt to open a recent file that no longer exists. It remains in recent files list. It also tries to open the MIA files and saves an incorrect path.

Steps to reproduce
  1. Go to Open a file
  2. Select a Recent File that no longer exists
  3. The file remains in the list

Ecrire crashes on start when using Wayland as the compositor.

Backtrace:

#0  0xb69d4b10 in XGetSelectionOwner () from /usr/lib/libX11.so.6
[Current thread is 1 (Thread 0xb5658e40 (LWP 3109))]
(gdb) bt
#0  0xb69d4b10 in XGetSelectionOwner () at /usr/lib/libX11.so.6
#1  0xb71b8250 in ecore_x_selection_owner_get (atom=0) at lib/ecore_x/ecore_x_selection.c:712
#2  0x0804c723 in _start ()
(gdb)

Kill the animation on start

Description

Description of issue
Not an issue per se but i somehow find it annoying. When you open file with ecrire there is this animation of the text rising from the bottom of the window. Can we eliminate that or add a setting option to not have it. I prefer to double click and show the text file immediately.

Steps to reproduce
  1. Just double click on a file
System information
  • EFL Version
    Stable
  • E Version
    Stable
  • X or Wayland
    Wayland

Save and Save as don't highlight after paste on new doc.

Description

Description of issue
As the title suggests. You have to type something in the doc to get them to appear.

Steps to reproduce
  1. Open a new ecrire win
  2. Copy and paste some text
  3. The save and save as options are not available
    ...
System information
  • EFL Version - 1.21.1
  • E Version - 0.22.4
  • X or Wayland - Wayland

Segmentation fault and crash on save as

Description

When saving as a new file or a recent file it crashes with a segfault

Steps to reproduce
  1. Create a new file or open a new one
  2. Modify document
  3. Click save as
  4. Select a recent file or enter a new file name
  5. Click ok/crash
    ...

Cannot save new file

When I open ecrire, type something and try to save my work - I get a corrupted dialog (see image).
Efl version is 1.20.99, OS is FreeBSD 11.

err-ecrire-save

Ecrire settings freeze the system when ecrire is run from the command line

Description

Description of issue
As the title suggests. EFL app have the ability to run from the command line. The settings being a separate window causes the system to freeze. AFAIK this is the reason the settings of all efl apps are inside the app and not implemented as a separate window.

Steps to reproduce
  1. Type ecrire to a command line
  2. Click Settings
  3. Freeze
System information
  • EFL Version
    Stable
  • E Version
    Stable
  • X or Wayland
    None of the above. KMS i think 😛

FreeBSD build problem

I have a problem building ecrire on FreeBSD. I have no strong skills in cmake build system, so I added -lintl at the end of ecrire/build/src/bin/CMakeFiles/ecrire.dir/link.txt file to build it successfully. Probably, your cmake files need some correction.
Initial error was:
[100%] Linking C executable ecrire /usr/bin/ld: undefined reference to symbol 'libintl_bindtextdomain' (try adding -lintl) /usr/local/lib/libintl.so.8: could not read symbols: Bad value cc: error: linker command failed with exit code 1 (use -v to see invocation) *** Error code 1

Saving after hiting the X to close on the top bar doesn't make Ecrire close

Description

Description of issue
Closing from X and selecting save from the popup doesnt close ecrire.

Steps to reproduce
  1. Open ecrire
  2. Type something
  3. Hit X to close
  4. Choose save from the popup
  5. Ecrire doesn't close. (no idea if it saves though). Expected behavior should be save and exit.
System information
  • EFL Version = 1.21
  • E Version = 0.22.4
  • X or Wayland = wayland

elm_code: Right click paste doubles on every other paste.

Title says it all. Right click paste actually does a double paste every other time.
What is expected: -alpha1
What you get the second time: -alpha1-alpha1
and back to what is expected the third time, and so on.

This does not happen when using paste from the bar.

Replace is not an undoable action

To rep:
Open a new win
Type two words (ie test test)
Hit search
In the search for field type test
In the replace field type whatever you want (ie fail)
Click replace all
Then click undo
It will delete the last few letters.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.