Re: [elinks-dev] Edit mode not exiting cleanly on Back

2007-05-08 Thread Kalle Olavi Niemitalo
Yan Seiner [EMAIL PROTECTED] writes:

 What happens is that the screen is not resetting the reverse
 mode.  If I am in an edit field and in edit mode and hit back,
 the reverse mode is carried over to the previous screen.  If I
 enter that screen via a link, it displays correctly.  If am not
 in edit mode when I hit back, it displays correctly.

If I understand correctly, you mean:
- Bind F2 to history-move-back.
- Set document.browse.forms.insert_mode = 1.
- Go to a page that contains a text field.
- Select this text field.
- Go to another page that contains a text field.
- Select this text field.
- Press Enter (ACT_EDIT_ENTER) to enter insert mode.
- Press F2 (ACT_MAIN_HISTORY_MOVE_BACK) to return to the first
  page.
- The text field in the first page is highlighted as if insert
  mode were enabled.
- Press o.
- ELinks does not insert the o to the text field but rather
  opens the option manager.  So insert mode was not actually
  enabled.

 Can anyone shed any light on this?  Where do I look to fix this?

This occurs because draw_current_link redraws the text field
before do_action sets ses-insert_mode = INSERT_MODE_OFF.
Text fields are drawn in two steps: draw_current_link draws the
attributes, and draw_form_entry draws the characters.

In ELinks 0.12.GIT (d1fa336f7f390d9b51456498fac5dda8f54c18a4):

(gdb) backtrace
#0  draw_current_link (ses=0x8459780, doc_view=0x8450a58)
at /home/Kalle/src/elinks-0.12/src/viewer/text/link.c:231
#1  0x08115f54 in draw_view_status (ses=0x8459780, doc_view=0x8450a58,
active=1) at /home/Kalle/src/elinks-0.12/src/viewer/text/draw.c:175
#2  0x081165da in draw_doc (ses=0x8459780, doc_view=0x8450a58, active=1)
at /home/Kalle/src/elinks-0.12/src/viewer/text/draw.c:297
#3  0x08116df3 in refresh_view (ses=0x8459780, doc_view=0x8450a58, frames=1)
at /home/Kalle/src/elinks-0.12/src/viewer/text/draw.c:386
#4  0x08116dba in draw_formatted (ses=0x8459780, rerender=2)
at /home/Kalle/src/elinks-0.12/src/viewer/text/draw.c:380
#5  0x080fa410 in display_timer (ses=0x8459780)
at /home/Kalle/src/elinks-0.12/src/session/session.c:452
#6  0x080fe430 in loading_callback (download=0x84597b8, ses=0x8459780)
at /home/Kalle/src/elinks-0.12/src/session/task.c:537
#7  0x080d044b in load_uri (uri=0x84d8480, referrer=0x0, download=0x84597b8,
pri=PRI_MAIN, cache_mode=CACHE_MODE_ALWAYS, start=-1)
at /home/Kalle/src/elinks-0.12/src/network/connection.c:916
#8  0x080fd069 in ses_load (ses=0x8459780, uri=0x84d8480, target_frame=0x0,
target_location=0x85e8168, cache_mode=CACHE_MODE_ALWAYS,
task_type=TASK_HISTORY)
at /home/Kalle/src/elinks-0.12/src/session/task.c:83
#9  0x080fd532 in ses_goto (ses=0x8459780, uri=0x84d8480, target_frame=0x0,
target_location=0x85e8168, cache_mode=CACHE_MODE_ALWAYS,
task_type=TASK_HISTORY, redir=0)
at /home/Kalle/src/elinks-0.12/src/session/task.c:221
#10 0x080f8e7d in go_history (ses=0x8459780, loc=0x85e8168)
at /home/Kalle/src/elinks-0.12/src/session/history.c:156
#11 0x080f8f9a in go_history_by_n (ses=0x8459780, n=1)
at /home/Kalle/src/elinks-0.12/src/session/history.c:175
#12 0x081128d5 in do_action (ses=0x8459780,
action_id=ACT_MAIN_HISTORY_MOVE_BACK, verbose=0)
at /home/Kalle/src/elinks-0.12/src/viewer/action.c:268
#13 0x0812b8e4 in send_kbd_event (ses=0x8459780, doc_view=0x8450a58,
ev=0xbfd88574) at /home/Kalle/src/elinks-0.12/src/viewer/text/view.c:1159
#14 0x0812bb79 in send_event (ses=0x8459780, ev=0xbfd88574)
at /home/Kalle/src/elinks-0.12/src/viewer/text/view.c:1224
#15 0x080fca3c in tabwin_func (tab=0x84509c0, ev=0xbfd88574)
at /home/Kalle/src/elinks-0.12/src/session/session.c:1280
#16 0x08100cb2 in term_send_event (term=0x8451b68, ev=0xbfd88574)
at /home/Kalle/src/elinks-0.12/src/terminal/event.c:131
#17 0x081015da in handle_interlink_event (term=0x8451b68, ilev=0x8451d18)
at /home/Kalle/src/elinks-0.12/src/terminal/event.c:390
#18 0x08101981 in in_term (term=0x8451b68)
at /home/Kalle/src/elinks-0.12/src/terminal/event.c:494
#19 0x080ca0c3 in select_loop (init=0x80c8c8f init)
at /home/Kalle/src/elinks-0.12/src/main/select.c:289
#20 0x080c9407 in main (argc=1, argv=0xbfd88714)
at /home/Kalle/src/elinks-0.12/src/main/main.c:360
(gdb)


pgpX07lbcF7gW.pgp
Description: PGP signature
___
elinks-dev mailing list
elinks-dev@linuxfromscratch.org
http://linuxfromscratch.org/mailman/listinfo/elinks-dev


Re: [elinks-dev] Edit mode not exiting cleanly on Back

2007-05-08 Thread Yan Seiner
Kalle Olavi Niemitalo wrote:
 Yan Seiner [EMAIL PROTECTED] writes:

   
 What happens is that the screen is not resetting the reverse
 mode.  If I am in an edit field and in edit mode and hit back,
 the reverse mode is carried over to the previous screen.  If I
 enter that screen via a link, it displays correctly.  If am not
 in edit mode when I hit back, it displays correctly.
 

 If I understand correctly, you mean:
 - Bind F2 to history-move-back.
 - Set document.browse.forms.insert_mode = 1.
 - Go to a page that contains a text field.
 - Select this text field.
 - Go to another page that contains a text field.
 - Select this text field.
 - Press Enter (ACT_EDIT_ENTER) to enter insert mode.
 - Press F2 (ACT_MAIN_HISTORY_MOVE_BACK) to return to the first
   page.
 - The text field in the first page is highlighted as if insert
   mode were enabled.
 - Press o.
 - ELinks does not insert the o to the text field but rather
   opens the option manager.  So insert mode was not actually
   enabled.

   
 Can anyone shed any light on this?  Where do I look to fix this?
 

 This occurs because draw_current_link redraws the text field
 before do_action sets ses-insert_mode = INSERT_MODE_OFF.
 Text fields are drawn in two steps: draw_current_link draws the
 attributes, and draw_form_entry draws the characters.
   
Thanks.  Is this going to be fixed in CVS or should I just try and hack 
around it?

--Yan

 In ELinks 0.12.GIT (d1fa336f7f390d9b51456498fac5dda8f54c18a4):

 (gdb) backtrace
 #0  draw_current_link (ses=0x8459780, doc_view=0x8450a58)
 at /home/Kalle/src/elinks-0.12/src/viewer/text/link.c:231
 #1  0x08115f54 in draw_view_status (ses=0x8459780, doc_view=0x8450a58,
 active=1) at /home/Kalle/src/elinks-0.12/src/viewer/text/draw.c:175
 #2  0x081165da in draw_doc (ses=0x8459780, doc_view=0x8450a58, active=1)
 at /home/Kalle/src/elinks-0.12/src/viewer/text/draw.c:297
 #3  0x08116df3 in refresh_view (ses=0x8459780, doc_view=0x8450a58, frames=1)
 at /home/Kalle/src/elinks-0.12/src/viewer/text/draw.c:386
 #4  0x08116dba in draw_formatted (ses=0x8459780, rerender=2)
 at /home/Kalle/src/elinks-0.12/src/viewer/text/draw.c:380
 #5  0x080fa410 in display_timer (ses=0x8459780)
 at /home/Kalle/src/elinks-0.12/src/session/session.c:452
 #6  0x080fe430 in loading_callback (download=0x84597b8, ses=0x8459780)
 at /home/Kalle/src/elinks-0.12/src/session/task.c:537
 #7  0x080d044b in load_uri (uri=0x84d8480, referrer=0x0, download=0x84597b8,
 pri=PRI_MAIN, cache_mode=CACHE_MODE_ALWAYS, start=-1)
 at /home/Kalle/src/elinks-0.12/src/network/connection.c:916
 #8  0x080fd069 in ses_load (ses=0x8459780, uri=0x84d8480, target_frame=0x0,
 target_location=0x85e8168, cache_mode=CACHE_MODE_ALWAYS,
 task_type=TASK_HISTORY)
 at /home/Kalle/src/elinks-0.12/src/session/task.c:83
 #9  0x080fd532 in ses_goto (ses=0x8459780, uri=0x84d8480, target_frame=0x0,
 target_location=0x85e8168, cache_mode=CACHE_MODE_ALWAYS,
 task_type=TASK_HISTORY, redir=0)
 at /home/Kalle/src/elinks-0.12/src/session/task.c:221
 #10 0x080f8e7d in go_history (ses=0x8459780, loc=0x85e8168)
 at /home/Kalle/src/elinks-0.12/src/session/history.c:156
 #11 0x080f8f9a in go_history_by_n (ses=0x8459780, n=1)
 at /home/Kalle/src/elinks-0.12/src/session/history.c:175
 #12 0x081128d5 in do_action (ses=0x8459780,
 action_id=ACT_MAIN_HISTORY_MOVE_BACK, verbose=0)
 at /home/Kalle/src/elinks-0.12/src/viewer/action.c:268
 #13 0x0812b8e4 in send_kbd_event (ses=0x8459780, doc_view=0x8450a58,
 ev=0xbfd88574) at /home/Kalle/src/elinks-0.12/src/viewer/text/view.c:1159
 #14 0x0812bb79 in send_event (ses=0x8459780, ev=0xbfd88574)
 at /home/Kalle/src/elinks-0.12/src/viewer/text/view.c:1224
 #15 0x080fca3c in tabwin_func (tab=0x84509c0, ev=0xbfd88574)
 at /home/Kalle/src/elinks-0.12/src/session/session.c:1280
 #16 0x08100cb2 in term_send_event (term=0x8451b68, ev=0xbfd88574)
 at /home/Kalle/src/elinks-0.12/src/terminal/event.c:131
 #17 0x081015da in handle_interlink_event (term=0x8451b68, ilev=0x8451d18)
 at /home/Kalle/src/elinks-0.12/src/terminal/event.c:390
 #18 0x08101981 in in_term (term=0x8451b68)
 at /home/Kalle/src/elinks-0.12/src/terminal/event.c:494
 #19 0x080ca0c3 in select_loop (init=0x80c8c8f init)
 at /home/Kalle/src/elinks-0.12/src/main/select.c:289
 #20 0x080c9407 in main (argc=1, argv=0xbfd88714)
 at /home/Kalle/src/elinks-0.12/src/main/main.c:360
 (gdb)


 !DSPAM:464015d940451874319035!
   
 

 ___
 elinks-dev mailing list
 elinks-dev@linuxfromscratch.org
 http://linuxfromscratch.org/mailman/listinfo/elinks-dev


 !DSPAM:464015d940451874319035!
   

___
elinks-dev mailing list
elinks-dev@linuxfromscratch.org
http://linuxfromscratch.org/mailman/listinfo/elinks-dev


Re: [elinks-dev] Edit mode not exiting cleanly on Back

2007-05-08 Thread Kalle Olavi Niemitalo
Yan Seiner [EMAIL PROTECTED] writes:

 Thanks.  Is this going to be fixed in CVS or should I just try and hack 
 around it?

I don't know if any ELinks developer is interested in fixing this
bug.  It has rather little impact and the fix is not obvious.  If
you post a patch, it may be accepted to Git (not CVS since 0.11.0).


pgpVTamgQ1OsL.pgp
Description: PGP signature
___
elinks-dev mailing list
elinks-dev@linuxfromscratch.org
http://linuxfromscratch.org/mailman/listinfo/elinks-dev