Commit Graph

13666 Commits

Author SHA1 Message Date
Daniel Silverstone
5e8b2d4653 gtk/local_history: Scroll local history to cursor on display
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 21:00:34 +01:00
Daniel Silverstone
c078c3f509 gtk/corewindow.c: Correctly handle scroll_visible
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 21:00:06 +01:00
Daniel Silverstone
818f4018d2 local_history: Handle keys for navigating local history
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 20:59:47 +01:00
Daniel Silverstone
1ee32fe962 local_history: Add concept of a cursor to the local history
So that we can eventually navigate around local history by
keyboard, add the concept of a history cursor to the local
history core window.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 20:59:08 +01:00
Daniel Silverstone
ad67eeff4b monkeyfarmer: Be a little more verbose when exiting
In an effort to try and determine why we sometimes get unexpected
exits, print the line queue during the handling of process exit.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 17:40:15 +01:00
Daniel Silverstone
6bbdf08cb0 gtk, beos: Run scheduler before fetching fdset
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 17:06:45 +01:00
Daniel Silverstone
4421d1bab6 llcache: Ensure we preserve iteratorness when sending messages
In order to prevent a problem where iterating causes an abort
which causes an iteration which clears the iteratorness of a
user allowing it to delete itself causing a segfault, preserve
the iteratorness when iterating in send_message

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 16:57:55 +01:00
Daniel Silverstone
f7d97d6483 monkey: Report the errno when select() returns -1
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 16:57:38 +01:00
Daniel Silverstone
6a9137f431 monkey: Run scheduler before extracting fdsets
We need to run the scheduler *before* we extract the fdsets from
the fetchers, otherwise fetch aborts might result in EBADF

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 16:56:54 +01:00
Daniel Silverstone
1150cf684d dukky: Remove unused dukky_safe_get()
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 15:08:46 +01:00
Daniel Silverstone
1f24336d6c curl: Change where we lodge inside_curl
Because we need to be slightly more careful now, lodge ourselves
`inside_curl` whenever we might be processing via the cURL messages
or similar.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 15:02:45 +01:00
Daniel Silverstone
09cce349da dukky: Clean up our stacktrace reporting
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 14:55:34 +01:00
Daniel Silverstone
c9384d65f6 curl: Immediately abort fetchers when we can
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 14:38:54 +01:00
Daniel Silverstone
0eb5aa68fb Duktape: Hopefully silence issue with %lld
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 14:19:13 +01:00
Michael Drake
15a3c21232 Duktape: Make declaration match definition for memcmp and double_div. 2019-08-02 14:19:13 +01:00
Michael Drake
ee338c9b24 Duktape: Make declaration match definition for duk_refzero_check_fast() 2019-08-02 14:19:13 +01:00
Michael Drake
1c2a0021b3 Duktape: Make declarations match definitions for fastint-enabled functions. 2019-08-02 14:19:13 +01:00
Michael Drake
80116bfe9f Duktape: Make declarations match definitions for duk_raw_read_xxx_be 2019-08-02 14:19:13 +01:00
Michael Drake
22a348fa31 Duktape: Make declarations match definitions for inline functions. 2019-08-02 14:19:13 +01:00
Michael Drake
f320725307 Duktape: Prevent clang static analysis. 2019-08-02 14:19:13 +01:00
Michael Drake
b4bbca89cd Duktape: Update to 2.4.0 release. 2019-08-02 14:19:13 +01:00
Vincent Sanders
3114e78ded fix missed get dimensions call in amiga frontend 2019-08-02 12:58:50 +01:00
Vincent Sanders
552aab42e1 remove scaled parameter from get_dimensions 2019-08-02 12:26:20 +01:00
Vincent Sanders
4ae27a6592 remove scaling from internal browser get_dimensions calls 2019-08-02 12:26:19 +01:00
Daniel Silverstone
5c9d54d05b Monkey: Properly support reload in farmer and driver
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 12:24:14 +01:00
Daniel Silverstone
095a0639d3 Document.bnd: Fix cookies getter and implement setter
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 12:23:45 +01:00
Daniel Silverstone
d196dee05b llcache: Use last_modified instead of date
When sending an If-Modified-Since header we should use the
`last_modified` rather than the `date` property of the cached
object in order to not incorrectly assume things have a modification
date when they do not.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 12:22:30 +01:00
Daniel Silverstone
9742a8317f Dukky: Add and utilise a jserrors category
Normal, and verbose logging will now also log all JS errors in order that we
stand a chance of debugging things more easily when testing.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 10:12:45 +01:00
Daniel Silverstone
6683818c18 Makefile.config.example: Document logging options
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 10:03:07 +01:00
Daniel Silverstone
3fcba68fcf Logging: Also log the level and category
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 09:58:41 +01:00
Daniel Silverstone
609ee9b71c Window: Provide a little more info on why not EXPOSE()ing some stuff
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 09:27:06 +01:00
Daniel Silverstone
ce7e6d91f5 Window: Restructure EXPOSE()d globals
By reference to the MDN and to Duktape's CLI, expose everything
we possibly can on the global object (Window).

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 09:17:12 +01:00
Vincent Sanders
955cf5f97b RISCOS: change invalidate to cope with unscaled rectangles 2019-08-01 22:34:13 +01:00
Vincent Sanders
654840e845 AMIGA: Update to remove rectangle scaling from browser window invalidate 2019-08-01 22:34:13 +01:00
Michael Drake
2943e9ae46 GTK: Update for unscaled bw invalidate rectangle. 2019-08-01 22:34:13 +01:00
Michael Drake
de12be4e9c Browser window: Make invalidate gui callback use unsacled coordinates. 2019-08-01 22:34:13 +01:00
Daniel Silverstone
e85e2f7cdf dukky.c: Correct typo (BUTTOM -> BUTTON)
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 21:57:36 +01:00
Daniel Silverstone
f365e75407 Dukky: Support console logging better
Add a polyfill for Array.from(), and fix the console formatter so that
it won't keep exploding.  This should improve matters in the tests.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 21:40:54 +01:00
Daniel Silverstone
bb3e0e51f1 dukky: Attempt to make the fallback to HTMLUnknownElement more useful.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 21:03:07 +01:00
Vincent Sanders
7f612548e7 reformat and tidy up browser window code ready for corewindow changes 2019-08-01 19:51:19 +01:00
Vincent Sanders
5742762070 split browser and browser_window operations 2019-08-01 19:51:19 +01:00
Michael Drake
f4f67698eb Docs: Convert GTK doc to markdown. 2019-08-01 16:57:44 +01:00
Vincent Sanders
83c9d2017f Fix clamping in commit fa64763b0d 2019-08-01 14:38:20 +01:00
Daniel Silverstone
acee5faa3f html_interaction.c: Default node to <HTML> node
In order to cope when an entire document is `visibility: hidden`
we default to the <HTML> node when interacting with the document
to ensure we don't drop off the end of the box model without
identifying at least one node to fire events at.

This resolves #2658

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 13:56:42 +01:00
Samuel Dionne-Riel
87177d8aa1 GTK: prefer using curl's intrinsic defaults for CURLOPT_CA*
On distributions that ship only a ca-bundle in `/etc/ssl`, the
configuration set at initialization will force curl to look for
certificates that are not present in this directory.

Removing the setting instead makes curl use its internal default.

The framebuffer frontend will not set this option, and the only
other frontend that sets it is BeOS.

This issue can be observed (likely among other) on the NixOS Linux
distribution.
2019-08-01 12:03:06 +01:00
Daniel Silverstone
c798d18a60 env.sh: Make it clear that this is not a shell script
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 11:06:38 +01:00
Michael Drake
335b0dc38b Docs: Remove mention of spidermonky.
We don't use it.
2019-08-01 10:51:28 +01:00
brabo
ba9f5f8ef0 gtk/fetch.c & monkey/filetype.c: ascii_is_space already checks for newline. 2019-08-01 10:42:08 +01:00
brabo
c90bfb23ad gtk/fetch.c & monkey/filetype.c: small comment correction. 2019-08-01 10:42:08 +01:00
Daniel Silverstone
fa64763b0d browser_history.c: Clamp contents to be 1x1 at min.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 09:29:22 +01:00