1
0
mirror of https://github.com/rkd77/elinks.git synced 2024-12-04 14:46:47 -05:00
Commit Graph

465 Commits

Author SHA1 Message Date
Witold Filipczyk
26a319e581 [quickjs] form.c 2021-11-02 20:49:03 +01:00
Witold Filipczyk
dc12c13244 [quickjs] Test commit. window.alert('Blabla') works. 2021-10-17 18:17:48 +02:00
Witold Filipczyk
9f52b04f2a [links] Added bool document.browse.links.show_goto . Refs #127 2021-09-23 11:36:26 +02:00
Witold Filipczyk
7b2179be1f [status] window_status unconditional. Refs #128 2021-09-22 15:01:52 +02:00
Witold Filipczyk
7feb5f4140 [mouse] Show message about disabled/enabled mouse 2021-09-21 19:02:43 +02:00
Witold Filipczyk
6ffa7ec6e3 [ecmascript] Show message in status about enabling/disabling Ecmascript 2021-09-20 18:40:01 +02:00
Witold Filipczyk
929c8c9d81 [action] Added toggle-ecmascript action 2021-09-19 19:40:01 +02:00
Witold Filipczyk
30f7601650 [form] detach form view 2021-09-16 21:43:28 +02:00
Witold Filipczyk
df9cb9dc5a [forms] Try to JS_SetElement 2021-09-16 20:26:20 +02:00
Witold Filipczyk
c30c6fa6c2 Revert "[textarea] Do not allow fs->vpos to be negative. Refs #126"
This reverts commit a0eb60d4bc.
2021-09-02 16:25:59 +02:00
Witold Filipczyk
a0eb60d4bc [textarea] Do not allow fs->vpos to be negative. Refs #126
It is rather a workaround.
2021-09-01 19:56:47 +02:00
Witold Filipczyk
66305fcb50 [gettext] try system gettext. Refs #62
Now, only meson was changed.
-Dnls=true -Dgettext=true
2021-08-08 21:25:08 +02:00
Witold Filipczyk
857c819da1 [iframe] next|prev frame when there is no link current doc_view 2021-08-02 20:08:45 +02:00
Witold Filipczyk
f77206f369 [iframe] Check whether link was changed 2021-08-02 20:08:11 +02:00
Witold Filipczyk
9bf5494d10 [iframes] Draw frame around iframe. 2021-07-31 14:48:13 +02:00
Witold Filipczyk
a3ebbc9f02 [iframe] Fix issue with cursor position 2021-07-30 16:44:36 +02:00
Witold Filipczyk
a945d47584 [iframes] No progress today 2021-07-28 21:22:47 +02:00
Witold Filipczyk
734028277c [iframe] Small progress. 2021-07-26 21:28:19 +02:00
Witold Filipczyk
62a08231ca [dump] Fix for hr. Refs #106 2021-03-17 14:56:12 +01:00
sgerwk
d894f563d0 optionally, going back from initial page closes tab or elinks 2021-03-13 13:07:30 +01:00
Witold Filipczyk
f351fbcf6a [dump] Experiment with pre_format_hook in dump. Refs #103 2021-03-07 22:07:34 +01:00
sgerwk
bd83c3e69e alert when moving to the next match of a failed search 2021-03-03 09:33:21 +01:00
sgerwk
59d682644f fix error message when no previous search was performed 2021-03-03 09:13:11 +01:00
Witold Filipczyk
89a5f106ef [search] Check NULL. Refs #99 2021-02-28 16:44:17 +01:00
Witold Filipczyk
acbcfd2eba [char] More casts to unsigned char 2021-02-27 09:51:23 +01:00
Witold Filipczyk
dfbd75c958 [select] off by two. Refs #88
Also changed a bit utf8_to_unicode.
2021-01-17 21:56:40 +01:00
Witold Filipczyk
0fea79cc8f [cflags] Removed -Wno-pointer-sign
Likely some new bugs were introduced by this change.
The long term goal is clean compilation by g++.
2021-01-02 16:20:27 +01:00
Witold Filipczyk
08da1d87eb [search] set searched word in setup_session. Refs #76 2020-11-04 17:26:46 +01:00
Witold Filipczyk
0989068e5c [search] Set current_search_number to -1. Refs #76 2020-11-01 14:57:25 +01:00
Witold Filipczyk
073a4374ff [search] Repeat searching, when pressing 'n'. Refs #76
On new page number_of_search_points is 0, so do search in such case,
when user pressed 'n'.
2020-10-31 22:47:17 +01:00
Witold Filipczyk
d1ecd45828 [mozjs52] It compiles, but often segfaults. No idea yet how to fix it. 2020-10-27 14:53:24 +01:00
Witold Filipczyk
1f57e72212 [mozjs24] Allow build elinks with g++
SpiderMonkey was updated to mozjs24. If you want to build elinks
with ecmascript support, you must compile using g++ with -fpermissive .
There is a lot of warnings.
There are some memleaks in ecmascript code, especially related to JSAutoCompartment.
I don't know yet, where and how to free it.

Debian does not support mozjs24, so I'm going to gradually update SpiderMonkey version.
2020-10-05 20:14:55 +02:00
Witold Filipczyk
3590191086 [search] Take into account vertical_overlap in vertical_scrolling to found text. Refs #68 2020-09-18 20:21:37 +02:00
Witold Filipczyk
5ad989ad43 [search] Do not scroll horizontally, when searched text is visible on screen. Refs #68 2020-09-18 10:23:00 +02:00
Witold Filipczyk
5f87bdbcb2 [meson] meson build scripts.
Not finished yet, but I added to motivate myself and others.
The goal is to get a few seconds faster builds.

autotools still will be available.
2020-09-05 22:06:01 +02:00
Witold Filipczyk
bec41b6e2f [clip] Page down overlaps sometimes. 2020-08-04 19:22:31 +02:00
Witold Filipczyk
964530422a [clipboard] Allow to enter the clipboard mode only with cursor routing. Refs #59 2020-08-04 16:07:19 +02:00
Witold Filipczyk
4bdf5fbbc4 [clipboard] Fixes 2020-08-03 18:56:26 +02:00
Witold Filipczyk
effb18d31f [clipboard] Allow to change rectangle in both directions 2020-08-03 18:27:25 +02:00
Witold Filipczyk
ed93225510 [draw] Refresh all page, when clipboard buffer is drawn. 2020-08-03 17:22:21 +02:00
Witold Filipczyk
53002765c4 [clipboard] Off by one. 2020-08-02 16:24:00 +02:00
Witold Filipczyk
9fd79ec508 [clipboard] Show last line 2020-08-02 16:20:08 +02:00
Witold Filipczyk
b6ec0c64d5 [clipboard] Fixes. 2020-08-02 15:41:35 +02:00
Witold Filipczyk
6a960a9fb9 [viewer] New action mark-clipboard. Refs #10
Possibility to mark rectangle for clipboard.
User may bind keys to move-cursor-up, move-cursor-down, move-cursor-left,
move-cursor-right and mark-clipboard.
mark-clipboard is tristate.
First triggerred, it remembers left top corner of rectangle. Now you can move cursor.
Second time triggerred, remembers right bottom corner of rectangle.
Third time, it clears selection.

The copy-clipboard action was changed. Now if the clipboard rectangle is marked,
it copies this rectangle. If not, the current link.
2020-08-01 23:25:21 +02:00
Witold Filipczyk
e94a912f1e [style] spaces -> tab 2020-06-05 18:07:45 +02:00
sgerwk
76a973e902 show an alert when the search string is not found 2020-06-05 14:13:37 +02:00
Witold Filipczyk
5c57cf6270 [fragment] Do not move to the top, when nonexisting fragment is in current document. Refs #42
Behaviour similar to bigger browsers.
2020-04-28 19:13:36 +02:00
sgerwk
d1be5c322f add -remote 'search(string)' 2020-04-25 19:55:16 +02:00
Witold Filipczyk
51dd9e7e6e [color] Revert changes related to leading and trailing spaces and colours
It did not look good.
2019-11-21 21:01:49 +01:00
Witold Filipczyk
3d96b0d7d7 Revert "Compile with C++."
This reverts commit 4f4df33638.
2019-04-21 12:27:40 +02:00
Witold Filipczyk
4f4df33638 Compile with C++.
Weak points:
- alignof
- js problems

Todo:
- make js work with C++ and mozjs-17
- then mozjs-24
- then mozjs-52
- then mozjs-60
- decrease number of warnings
2019-02-17 20:46:16 +01:00
Witold Filipczyk
6dfdd36398 form_control -> el_form_control 2018-09-09 19:18:53 +02:00
Witold Filipczyk
d8be2c505e Rename struct box to struct el_box.
In the future I want to copy some code from netsurf, so I'm preparing.
2018-09-09 19:14:56 +02:00
sgerwk
2f58dfce13 when searching in a node, only search within its box 2018-06-25 10:47:51 +02:00
Fabienne Ducroquet
3665ee2ef7 Move check on number of search points to move_search_do
If doc_view->document->number_of_search_points is 0, move_search_number
crashes at:

pt = doc_view->document->search_points;
x = pt[number].x;
y = pt[number].y;

so it is not sufficient to make find_first_search_in_view return
immediately in this case, move_search_do should return immediately.
2018-06-07 17:25:21 +02:00
Witold Filipczyk
f2c0a380ab Check if nothing has found. Refs #21 2018-04-15 18:08:54 +02:00
Witold Filipczyk
ad5f8165b2 Wraparound search 2018-04-15 16:45:23 +02:00
Witold Filipczyk
798a7cc4e6 Reuse existing functions to scroll. Added horizontal_scroll_extended. 2018-04-15 14:32:18 +02:00
Witold Filipczyk
7a006b6dd2 Rewritten searching. Refs #21
Before only visible part of screen was searched for pattern.
Now whole document is searched, and beginings of found text
is remembered in document->search_points.
2018-04-14 21:49:52 +02:00
Witold Filipczyk
fd1ae61131 Let search for more unbreakable spaces. Refs #20 2018-04-07 11:43:28 +02:00
Witold Filipczyk
fbfbe4013c Interpret 0xA0 (nbsp in UTF-8 mode) as space char for searches. Issue #20 2018-04-06 20:02:49 +02:00
Felix Janda
bfb4733f39 Don't use <sys/signal.h>
This legacy header appears to be unused. Removing its includes
avoids numerous warnings when compiling with musl libc:

/usr/include/sys/signal.h:1:2: warning: #warning redirecting incorrect #include <sys/signal.h> to <signal.h> [-Wcpp]
2017-11-23 17:51:41 -05:00
rkd77
be719e1ac1
Merge pull request #10 from aelmahmoudy/select_forms
Make select forms look more like other forms.
2017-11-22 12:02:06 +01:00
rkd77
77ea5759ed
Merge pull request #9 from aelmahmoudy/preferred_document_width_option
Add preferred_document_width option.
2017-11-22 11:59:17 +01:00
rkd77
a6996b7d3a
Merge pull request #7 from aelmahmoudy/keep_forms_bold
Keep forms in bold even when active.
2017-11-22 11:55:40 +01:00
rkd77
f44fdc25ed
Merge pull request #5 from aelmahmoudy/dont_underline_active_textarea
Avoid underlining active text areas.
2017-11-22 11:53:32 +01:00
Yozo Hida
948d019fc0 Add preferred_document_width option.
Option document.browse.preferred_document_width controls the
width of the document, so that documents are rendered with narrower
width than screen width.  Makes it easier to read paragraphs.

Patch originally from Shalon Wood <dstar@pele.cx>, see bug #1063.

Instead of using max_document_width as the hard limit to the document
width, it uses a soft limit, where if the document does not fit (due to
tables, etc.), then larger width is used.  This reduces the need for
horizontal scrolling for wide documents.

Also added toggle-document-width action to toggle between preferred
width and full screen width.  This is bound to 'M' by default.  Initial
toggle status is determined by document.browse.use_preferred_document_width
option.

During dumps, document.dump.width option is still used.  Perhaps we
should consolidate document.dump.width option with
document.browse.preferred_document_width ?
2017-11-21 16:09:13 +01:00
Yozo Hida
7e58737619 Make select forms look more like other forms.
Insert "[_" and "_]" as part of the form link, and
include it as part of the link.
2017-11-21 16:06:33 +01:00
Yozo Hida
2a09148e5a Avoid underlining active text areas.
They already have underscores, so underlining them is redundant (and looks a
bit strange).
2017-11-21 16:04:27 +01:00
Yozo Hida
6ad3e541c8 Keep forms in bold even when active. 2017-11-21 16:02:26 +01:00
Yozo Hida
4ed958b067 Provide different color for text areas in insert mode.
The color is controlled by

  document.browse.links.active_link.insert_mode_colors.background
  document.browse.links.active_link.insert_mode_colors.text

Also avoid overloading local variable "i" in get_current_link().
2017-11-21 16:00:39 +01:00
Witold Filipczyk
0266633025 Fix issue with one char documents. Patch by Felix Janda 2017-11-14 09:54:05 +01:00
Witold Filipczyk
f3ab69bb13 Color trailing spaces with color of last non-space cell 2017-06-13 22:39:53 +02:00
Witold Filipczyk
c610fcf334 Off by one, also 200 instead of 30 2017-06-13 17:07:23 +02:00
Witold Filipczyk
da15322705 Cast to (const char *) in strrchr calls 2016-04-20 21:03:27 +02:00
Witold Filipczyk
96e65c105f Explicit cast in strstr for C++ 2016-04-20 20:46:33 +02:00
Witold Filipczyk
1b06539694 Explicit cast to (const char *) in strcasestr for C++ 2016-04-20 20:11:08 +02:00
Witold Filipczyk
52d6f37c8e Explicit cast to (const char *) for strchr function (C++) 2016-04-20 19:43:37 +02:00
Witold Filipczyk
2e721e051a template -> template_ for C++ compatibility 2016-04-20 18:05:00 +02:00
Witold Filipczyk
4efea7e314 Added support for label_key in references of dumps.
Added base parameter to dec2qwerty and qwerty2dec to avoid strlen calls
im dumps.
2016-02-07 11:51:17 +01:00
Witold Filipczyk
69986f1bd1 Multiplication instead of pow calls and minor style changes. 2016-01-31 12:38:18 +01:00
Martin Miller
28b7bd1ec2 Transfer changes for ascii link labeling 2016-01-31 10:23:08 +01:00
Fabienne Ducroquet
3379fc988c Respect alphabetical order for the actions
I didn’t respect the right order when I added the functions to move up and down
by half a page a few years ago.

Signed-off-by: Fabienne Ducroquet <fabiduc@gmail.com>
2013-12-18 16:38:57 +01:00
Fabienne Ducroquet
60a5fce0f0 Add a function to put the current line at the top of the screen
Signed-off-by: Fabienne Ducroquet <fabiduc@gmail.com>
2013-12-18 10:01:34 +01:00
Witold Filipczyk
40fdc14012 30 instead of 10. Python tutorial looks better. 2013-12-16 17:04:59 +01:00
Kalle Olavi Niemitalo
bfeb09fe37 doxygen: Document dump.c some more
Doxygen complained that the cp parameter of dump_output_alloc was not
documented.  Fix that, and document dump_output_prepare_frame too.
2012-11-18 20:16:37 +02:00
witekfl
ba9bbc9e46 draw_space: Check for a non-space only in first 10 chars of the line.
I know it is totally brainless, but buildlogs.pld-linux.org
looks good now.
2012-07-11 11:39:26 +02:00
witekfl
42d2433f4b Color leading spaces with the color of the first non-space character.
Also color trailing spaces with the color of the last character.

See for example gtk-doc.
2012-07-11 11:14:03 +02:00
witekfl
36070d3277 The union of the color and the node_number in the struct screen_char.
The long term goal is good looking of the Python docs in ELinks, especially
background colors. Every start tag and every text node would have associated
a natural number. Those numbers would be "drawn" in the document instead
of colors. Finally, the screen driver would change numbers into colors.

This will be done in small steps. The next step is to implement this change
in the screen driver.
2012-03-03 11:27:58 +01:00
Miciah Dashiel Butler Masters
3932af9b17 SMJS: handle view_state outliving wrapping object
Currently, it is possible for the JSObject that wraps a struct view_state
to outlive the view_state.  Using the properties of the JSObject wrapper
will then cause a crash.

This patch adds a smjs_detach_view_state_object function, which is called
in destroy_vs, to dissociate the struct view_state from the JSObject
wrapper.  To this end, the patch modifies the struct view_state to point
the JSObject wrapper.  smjs_get_view_state_object will use this pointer
if it is set, and copy_vs will copy this pointer to the new view_state.
The patch also modifies view_state_get_property and
view_state_set_property to return immediately if the view_state has been
destroyed.  Finally, the patch adds a finalizer (view_state_finalize)
that clears the pointer from the struct view_state to the JSObject.
2011-11-14 04:34:51 +00:00
Miciah Dashiel Butler Masters
daa6f36e83 Perform the work of try_form_insert_mode in enter
Currently, the function try_form_insert_mode checks whether the current
link is a text area, insert mode is off, and the current action is enter,
and if so, it sets insert mode on.  Perform this work in enter instead,
and delete try_form_insert_mode.

The old code works as follows: send_kbd_event → send_to_frame
→ frame_ev → frame_ev_kbd → try_form_insert_mode.  The new code works
as follows: send_kbd_event → do_action → enter.
2011-11-14 04:34:50 +00:00
witekfl
3d4fe9c4d2 Always do reload after submitting forms.
In fact, it does reload after pressing any button, but it should not
hurt. To remember to press 'x' for submitting forms was too hard.
2011-11-12 15:17:53 +01:00
Petr Baudis
9a001f051a Remove variables that were set but not used
Required to make new gcc with default warning settings happy.
2011-09-24 02:25:51 +02:00
Kalle Olavi Niemitalo
715571a5d6 HTML bug 1114: Don't doubly decode entities in attributes
The HTML parser decoded SGML entity references and numeric character
references in the following attributes, and then the renderer did the
same again:

link/@title
link/@hreflang
link/@type
link/@media
img/@alt
area/@alt
input[@type="image"]/@alt
input[@type="image"]/@name
input[@type="button"]/@value

The result was that e.g. title="&amp;#65;" displayed as "A"
even though it was supposed to display as "&#65;".

Fix by making the HTML parser tell the renderer that the entities have
already been decoded.
2011-05-01 22:54:45 +03:00
Miciah Dashiel Butler Masters
dfc666dd75 Factor try_menu out of send_kbd_event
Try to make the code a little clearer by pulling try_menu out of
send_kbd_event.  try_menu calls the BFU code and tells send_kbd_event
whether the BFU code did something with the event (i.e. opened a menu)
or whether the event still needs to be handled.
2011-01-19 03:52:08 +00:00
Miciah Dashiel Butler Masters
af5e54d95f send_kbd_event: Fix accesskeys when priority = 0
With document.browse.accesskey.priority = 0, accesskeys were ignored if
the current tab was not the last (rightmost) tab.  This commit fixes the
problem.

Add a function tabs_are_on_top(struct terminal *) which returns
a Boolean value indicating whether the topmost window is a tab (as
opposed to, e.g., a menu).

This commit fixes commit 1bd498cde9.
2011-01-19 03:44:50 +00:00
Miciah Dashiel Butler Masters
00870bfe3d Delete unused variables after next to last commit
Delete some variables that are unused as of the next to last commit.

Thanks to Simon Ruderich for pointing out that those variables were
still there.
2010-09-16 20:57:34 +00:00
Miciah Dashiel Butler Masters
ece4d3dc2d fixup_typeahead_match: improve comment
Clarify the comment for fixup_typeahead_match and put it closer to the
relevant code.
2010-09-16 02:00:01 +00:00
Miciah Dashiel Butler Masters
b53e8450d1 fixup_typeahead_match: use check_vs
Use check_vs instead of set_pos_x and set_pos_y in fixup_typeahead_match.
This saves us a line of code, and in addition, check_vs does not needlessly
scroll when the link is already in view.
2010-09-16 01:56:45 +00:00
Miciah Dashiel Butler Masters
b1422adf20 Move screen update code into set_kbd_repeat_count
Make set_kbd_repeat_count update the status bar and link highlighting
iff the repeat count is changed to a different value.

Delete code to do the same updates from do_action and try_prefix_key.

Besides simplifying the code, this change also fixes some issues with
the status bar and link highlighting not being properly updated in some
situations.
2010-09-16 01:40:10 +00:00