Commit Graph

1007 Commits

Author SHA1 Message Date
Michael Drake
59078c3f20 risc os: URL bar: Fall back to URL drag if OS doesn't have text selection. 2020-11-03 10:23:50 +00:00
Michael Drake
925a76bcba risc os: wimputils: Make text-selection helper static inline. 2020-11-03 10:00:14 +00:00
Michael Drake
3cead4e867 risc os: Don't swallow URL bar drags if the OS supports text-selection.
It should still be possible to drag save the URL from the favicon.
2020-11-03 09:55:26 +00:00
Michael Drake
f8eabec04b risc os: wimputils: Helper to check OS support for text-selection. 2020-11-03 09:53:15 +00:00
Chris Young
511f4cc800 Add missing include 2020-10-09 13:05:51 +01:00
Chris Young
12fba46d3e Cache codesets structure ourselves
attempt to speed up conversion as apparently codesets is being very slow
2020-10-09 13:01:48 +01:00
Daniel Silverstone
32d52bf055
gtk: In path plotter, maintain cairo transformation offset
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-10-03 21:42:46 +01:00
Daniel Silverstone
58fee8749f
gtk/bitmap: Assert surface width/height non-zero
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-10-03 14:25:43 +01:00
Vincent Sanders
7997182cc0 Improve the framebuffer docs a bit 2020-09-18 10:34:32 +01:00
Vincent Sanders
b0b271274c Make GTK UI resources more consistent
The GTK UI resources have to be different resources between major versions.

When kept in one directory with slightly different filenames they were
  difficult to distinguish and resource definition was difficult to update.

The resources for both gtk versions were stored in both builds resulting in
  unneccessary increased binary size.

The new stratagy lists the UI files once in a single gresources file and only
  includes what is required. If a UI file is added it must be provided in both
  gtk2 and 3 or a build failure will occour rather than a runtime error.
2020-09-04 08:26:04 +01:00
Zixing Liu
50f5e3f1a6 Makefile: add Chinese (Simplified) translation target
Signed-off-by: Zixing Liu <liushuyu@aosc.io>
2020-09-02 08:59:38 +01:00
Weiyi Xu
4d224afba3 resources: add Chinese (Simplified) translations
Signed-off-by: Weiyi Xu <xuweiyi0923@gmail.com>
Signed-off-by: Zixing Liu <liushuyu@aosc.io>
Signed-off-by: Mingcong Bai <jeffbai@aosc.io>
2020-09-02 08:58:53 +01:00
zeug
1ea47f9caf Support Ctrl+A in the windows toolkit address bar 2020-08-16 23:50:52 +01:00
Vincent Sanders
410cb9a8fd gtk compile din resource list was missing pageinfo for gtk2 build 2020-08-15 09:49:27 +01:00
Vincent Sanders
421d796e9b split tools and utils 2020-06-27 23:30:54 +01:00
Vincent Sanders
54e06e7d58 move all the build tools to utils
move the source and make rules of the convert image and font tools
 to the utils directory. This puts all the rules for build tools together.
2020-06-22 22:45:10 +01:00
Michael Drake
a27f5d32cd Framebuffer: Internal font: Fix SW and NW arrow directions. 2020-06-22 13:27:18 +01:00
Vincent Sanders
38bfbe9cf6 remove perl split-messages tool usage 2020-06-22 00:04:42 +01:00
Chris Young
ed84f7a018 Amiga: avoid read from NULL pointer 2020-05-26 18:05:14 +01:00
Chris Young
68f1b41bf0 Amiga: Use IANA codeset number to identify local charset 2020-05-26 15:08:51 +01:00
Chris Young
22ea4cbe65 Amiga: Use codesets.library for UTF8 conversion if available 2020-05-26 14:15:04 +01:00
Chris Young
6d62a06899 Amiga: correct schedule parameter 2020-05-25 14:07:38 +01:00
Chris Young
44e5aea7b5 Amiga: avoid use after free
Use the scheduler to trigger page info close as that does not allow the same event to be in the queue multiple times
2020-05-25 13:50:20 +01:00
Vincent Sanders
8924f0c7f9 fix warnings in amiga stringview 2020-05-25 13:45:54 +01:00
Vincent Sanders
2b8501b342 fix incorrect content handler function table operations return types 2020-05-25 13:45:54 +01:00
Vincent Sanders
860fbc2f8c make browser_window_update internal to browser window as intended 2020-05-25 13:45:54 +01:00
Chris Young
53d07a8e46 Amiga: try to guard against page info window being destroyed twice 2020-05-25 13:04:29 +01:00
Vincent Sanders
9993c37d5b Update version for next development cycle 2020-05-24 21:58:37 +01:00
Vincent Sanders
114dd37c6e fix RISC OS corewindows incorrectly becoming visible when scroll extents are set 2020-05-24 16:49:45 +01:00
Michael Drake
1c4025e92c RISC OS: Prevent closed corewindows opening on scroll requests. 2020-05-24 14:39:49 +01:00
Michael Drake
cb44b56378 RISC OS: Drop extended scroll request logging. 2020-05-24 13:16:24 +01:00
Michael Drake
5af4e79197 RISC OS: Try to improve scroll wheel handling. 2020-05-24 11:36:42 +01:00
Vincent Sanders
d3ac0e71ab Fix open url dialog not coping with invalid url by using the omnibox helper 2020-05-24 11:19:10 +01:00
Michael Drake
52d0583ace RISC OS: Update page info urlbar icons. 2020-05-23 21:47:34 +01:00
Daniel Silverstone
60f8f0126d
windows: Enable present_cookies callback
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-23 21:18:47 +01:00
Daniel Silverstone
8e0469d41d
monkey: Support present_cookies
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-23 21:18:47 +01:00
Daniel Silverstone
82dc6ec097
riscos: Enable support for present_cookies
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-23 21:18:47 +01:00
Daniel Silverstone
adafe3c750
amiga: Probably support present_cookies
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-23 21:18:47 +01:00
Daniel Silverstone
33fe0faab6
beos: Add NULL so present_cookies is filled
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-23 21:18:47 +01:00
Daniel Silverstone
a4e9f41948
gtk: Implement handling of new present_cookies callback
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-23 21:18:46 +01:00
Michael Drake
cf798ba79a RISC OS: Be less intrusive with URL bar max URL length handling. 2020-05-23 17:38:44 +01:00
Vincent Sanders
714a90e2a5 update resources copyright years and readme version numbers 2020-05-23 11:14:06 +01:00
Chris Young
3f84dba779 Amiga: fix an issue where the page info icon was not updating correctly 2020-05-23 01:02:09 +01:00
Chris Young
dc5cae7306 Amiga: make page info borderless 2020-05-23 00:46:35 +01:00
Chris Young
3efeb41d1d Amiga: make page info close when window goes inactive 2020-05-23 00:13:52 +01:00
Chris Young
aa86da5f02 Amiga: position page info window under page info button 2020-05-22 23:58:16 +01:00
Chris Young
413c3803c5 Amiga: simplify page info GUI, add close gadget 2020-05-22 23:10:23 +01:00
Vincent Sanders
67b2d3931d make risc os url entry use the omi box and hence cope with bad urls gracefully 2020-05-22 20:36:44 +01:00
Daniel Silverstone
9c0fa9c939
gtk: Do not attempt to use now-freed scaffolding when iterating them to quit
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-22 20:29:20 +01:00
Chris Young
244c49df26 Amiga: Add page info window
Currently untested but builds OK
2020-05-22 18:52:29 +01:00
Vincent Sanders
d090f016ad add page information core window handler to RISC OS 2020-05-22 17:34:39 +01:00
Vincent Sanders
45cac1ea64 neaten up the sourec file list to make future changes easier 2020-05-22 17:32:30 +01:00
Vincent Sanders
6da6f1f66c make risc os url bar widget context consistent 2020-05-22 17:32:30 +01:00
Vincent Sanders
9ae8023d53 add url bar click actions for page info icon 2020-05-22 17:32:30 +01:00
Vincent Sanders
19232ef3ed reformat riscos url bar gui module. no code changes 2020-05-22 17:32:30 +01:00
Daniel Silverstone
a35f35fec0
frontends/gtk: Defocus search before selecting all in relevant core windows
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-22 11:36:43 +01:00
Michael Drake
fcbc710ce5 Squash warnings: '%s' directive argument is NULL. 2020-05-22 10:39:40 +01:00
Daniel Silverstone
de56170cb9
frontends/atari: Include the *right* options header
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-22 09:34:10 +01:00
Daniel Silverstone
0797375380
frontends/atari: Add missing include of options.h
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-22 09:32:03 +01:00
Daniel Silverstone
e6c666d4f4
chore: Perform sslcert_viewer-ectomy
This removes the sslcert_viewer entirely from the code. Where
possible I've also trimmed out of frontends any code I think
should not be present.

Frontends should check and remove any further references that I
have failed to catch.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-22 09:01:39 +01:00
Vincent Sanders
3a7fc30a5f implement content opacity check through the function table 2020-05-13 19:03:14 +01:00
Daniel Silverstone
a98003674b
GTK: Add transient popup behaviour for local history too
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-09 19:38:26 +01:00
Daniel Silverstone
d2e5446bfb
GTK: Change toolbar page-info to use compat allocation function
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-09 11:58:44 +01:00
François Revol
600b2ed60a Haiku: Better map mouse cursors
Drop custom cursor bitmaps in favor of the system ones.

We only miss the wait cursor now, but the progress one should do.
2020-05-09 01:28:43 +02:00
Daniel Silverstone
4b8ed9b777
GTK: Cause the page-info popup to appear in the right place
To position the page-info window we have to tunnel all the
way from the current scaffolding, via its top-level gui window,
through to the toolbar.  In the toolbar we look up the URL bar
and then determine the screen coordinates of the scaffolding
via the top level widget GTK semantics.

Finally we place the page-info window 4 pixels down and right of
the bottom-left of the entry box, which should look nice.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-08 20:46:37 +01:00
Daniel Silverstone
14e506f89f
GTK RES: Make page info windows popup type
In order for GTK windows to be styled properly, in the context
we use them, the page-info windows need to be marked as popup
windows (typically used for transient popups such a menus, so
ideal for us).

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-08 20:43:43 +01:00
Daniel Silverstone
524688098a
GTK: Make page info transient properly, handle events, etc.
This makes the page info properly transient and causes it
to handle activity in the corewindow and outside itself
properly.  This includes ensuring that actions outside
the window will close it, etc.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-05-08 20:42:49 +01:00
Vincent Sanders
ab952e0634 improve content header usage 2020-05-07 20:55:44 +01:00
Daniel Silverstone
309fcd6d42
monkey: Catch some signals and backtrace
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-04-25 21:04:41 +01:00
Vincent Sanders
529b94be73 fixup riscos image configuration dialog gadget id
when minimum GIF delay was removed in
 38c632a7da the
 remaining gadget identifier numbers were not updated.

Fixes #2745
2020-04-14 22:03:24 +01:00
Vincent Sanders
84f0c760e6 use form of window create which returns an error instead of aborting 2020-04-14 21:08:51 +01:00
Vincent Sanders
34508fc3cd For some reason atari mkdir_all operation was using the wrong path separator 2020-03-25 21:54:12 +00:00
Daniel Silverstone
d3a80a9aae
Monkey: Clean up on completion of downloads
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 13:08:36 +00:00
Michael Drake
ca29c3b512 Framebuffer: Make some log messages deep debug. 2020-03-12 17:21:28 +00:00
Vincent Sanders
2c549b28fb add page information ui elements to GTK frontend 2020-03-11 08:33:58 +00:00
Michael Drake
f59c415ef7 GTK: Initial page-info display. 2020-03-11 08:33:58 +00:00
Chris Young
b371454344 AmiSSL implies OpenSSL 2020-03-06 20:42:34 +00:00
Chris Young
9664a8ac76 Mod os3support files so file.c builds 2020-03-06 20:29:45 +00:00
Daniel Silverstone
0b4d1fbb1b
monkey: Enable disc cache optionally on monkey
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-24 15:37:11 +00:00
Michael Drake
79821cd9cf Frontends: Delete maps resource links. 2020-02-24 15:02:12 +00:00
Michael Drake
a47270c93e About fetches resources: Drop maps resource.
It had bitrotted.
2020-02-24 14:21:27 +00:00
Daniel Silverstone
e59e52b853
windows: Convert the remaining NoMemory warnings which aren't about memory
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-24 12:10:35 +00:00
Daniel Silverstone
2fa06ed503
windows: Use nserror reporting rather than always NoMemory
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-24 11:57:18 +00:00
Daniel Silverstone
56a9a25192
Windows: Add nserror reporting function
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-24 11:57:02 +00:00
Daniel Silverstone
8ca778197c
framebuffer: Use new enumerate feature of libnsfb
1. Select as default the most useful compiled in surface
2. If the selected surface is unavailable, report the valid
   surface list to the user.  Also do this if the user specifies
   -f ? on the CLI.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-24 10:58:07 +00:00
Michael Drake
9062ae3c70 GTK: Page info: Change crtvrfy to pi throughout. 2020-02-23 17:38:14 +00:00
Vincent Sanders
8a834918e3 missed a certificate change on amiga frontend 2020-02-23 17:37:33 +00:00
Vincent Sanders
338dd004f2 fix windows and amiga frontends to cope with certificate chain changes 2020-02-23 17:25:19 +00:00
Vincent Sanders
7039973a1f fix frontends to cope with certificate chain update 2020-02-23 17:19:45 +00:00
Vincent Sanders
0c34d06494 Keep the complete certificate chain from a fetch
Instead of extracting information from the X509 certificate chain in
the fetcher the entire chain is propagated in Distinguished Encoding
Rules (DER) format.

This allows all the information contained in a certificate chain to be
retained which can subsequently be presented to the user
2020-02-23 16:23:50 +00:00
Daniel Silverstone
614ca752f3
GTK: When we update the dimensions, resize the grid
By doing this, we ensure the scrollbars update their thumbs
properly, otherwise they can lag behind the page shape somewhat.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 21:41:17 +00:00
Daniel Silverstone
486aff5efc
GTK: Drain GTK events before schedule_run()
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 21:01:27 +00:00
Daniel Silverstone
6321243bbd
GTK: Catch a couple of missed flag renames
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 21:01:27 +00:00
Daniel Silverstone
98c1bd1b5c
GTK: Update preferences dialog to use GtkBox
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 17:26:33 +00:00
Michael Drake
194dfad4a5 Core window: Constify the core_window handle through the getters. 2020-02-22 16:37:37 +00:00
Daniel Silverstone
e87bc1bfda
GTK: Remove hack for url bar refresh on throbber stop
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 16:25:49 +00:00
Daniel Silverstone
c9e5fa9bc1
GTK: Ensure that we don't frob the URL bar from the scaffold
To correctly refocus the location box on tab switching we
need to not update the url of the tab when the scaffold updates
its global context.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 15:47:17 +00:00
Daniel Silverstone
a016445a82
GTK: Add a location focus state machine
Because the initial navigation process on new browser window
creation is somewhat complex, we need a small state machine in
the GTK UI to ensure that we handle the correct combination
of focussing needed to maintain selection through initial tab
opening.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 15:33:17 +00:00
Daniel Silverstone
5239163f4d
GTK: Request and honour location focus
So that when we create a new tab we automatically focus the
location box, pass the flag into create, and honour it when it
comes back to us.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 15:12:22 +00:00
Daniel Silverstone
5c377cd285
GTK: Use new BW_CREATE_FOREGROUND flags
This gets rid of temp_open_background which was, frankly, a bit
of an eyesore.  In addition it makes the open-in-new-tab context
menu action behave like Firefox's with respect to the user's preference
regarding whether or not to immediately focus new tabs.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-02-22 11:51:10 +00:00