Commit Graph

288 Commits

Author SHA1 Message Date
Vincent Sanders
1c6232da6a improve gtk layout debugging 2024-09-17 08:43:03 +01:00
Vincent Sanders
fd1a709490 change web search option to use provider name instead of index 2024-05-27 14:29:23 +01:00
Vincent Sanders
f01a948329 move core window callbacks to the standard gui tables 2024-05-26 19:59:17 +01:00
Vincent Sanders
b5f4d905f9 use attributes to indicate switch fall through instead of comments 2024-03-05 21:33:13 +00:00
Vincent Sanders
a8a5b16df3 fix c library API flags for freebsd when building GTK 2024-03-05 11:44:59 +00:00
Étienne Deparis
583ec72680 Resources: Add french static files 2024-03-01 16:17:15 +00:00
Vincent Sanders
2655109bff fix gtk frontend download destroy function definition 2024-02-27 12:34:24 +00:00
Vincent Sanders
dbe5d1ef87 Implement simple jpeg xl image handler 2023-11-26 17:26:09 +00:00
Vincent Sanders
41de6cb6f8 Ensure the current scaffold remains valid
When a scaffold was being destroyed the currently selected scaffold could become a reference to a destroyed object. This would result in crashes subsequently when the current scaffold was referenced.

The change is simply to ensure the selected scaffold is changed to something valid during destruction.
2023-11-25 12:02:58 +00:00
Michael Drake
b22e61871c gtk: Don't try to make zero-size bitmaps
Fixes complete failure to render wikipedia and the register when
built against rsvg.
2023-01-24 15:30:57 +00:00
Vincent Sanders
9b57f64c55 add rsvg image decoder that uses the new API 2022-11-27 17:34:41 +00:00
Michael Drake
836b5b6126 gtk: toolbar: Handle snprintf error 2022-10-23 17:22:56 +01:00
Michael Drake
a584c6bb3b gtk: pixbuf creation: Avoid int overflow before size_t conversion 2022-10-23 17:22:56 +01:00
John-Mark Bell
b81c95aca8 s/http/https/ in user-facing URIs 2022-05-27 17:58:51 +01:00
Michael Drake
7d5c449389 GTK: Simplify opaque bitmap handling.
Avoid creating new bitmaps and copying in set_opaque by always
using an RGBA format.
2022-03-29 17:32:40 +01:00
Michael Drake
8e56cc3b1a Bitmap: Implement test_opaque in core instead of in every frontend. 2022-03-29 15:25:33 +01:00
Michael Drake
231c96cf8d GTK: Bitmap: Converted bool not needed any more. 2022-03-28 16:42:09 +01:00
Michael Drake
fce59865c5 GTK: Drop bitmap format logging that's duplicated in the core. 2022-03-28 16:29:14 +01:00
Michael Drake
414cb1a851 GTK: Get the core to handle premultipled alpha bitmap format. 2022-03-28 16:08:00 +01:00
Michael Drake
035106032b GTK: Search: Squash implicit declaration of malloc. 2022-03-28 11:47:46 +01:00
Michael Drake
acc07fcf85 GTK: Scaffolding: Squash implicit declaration of malloc, free. 2022-03-28 11:47:03 +01:00
Michael Drake
5b96635c73 GTK: Misc: Squash strcmp and strdup implicit declaration warnings. 2022-03-28 11:45:17 +01:00
Michael Drake
ad7544a6df GTK: Set bitmap format to match Cairo format.
Cairo format is native endian 0xAARRGGBB.
2022-03-28 11:11:03 +01:00
Michael Drake
002c3c1a7c Bitmap API: Clean up creation flags. 2022-03-24 18:09:28 +00:00
Michael Drake
ee874c7ea1 GTK: Drop bitmap save callback entry; core doesn't use it. 2022-03-24 15:27:55 +00:00
Michael Drake
26cef7d444 GTK: Drop bitmap get bpp function. 2022-03-24 12:53:10 +00:00
Michael Drake
729e56dccc GTK: Add support for word left/right keybindings. 2022-01-23 14:26:50 +00:00
Michael Drake
88d5ea8668 GTK: Add support for word delete left/right.
These are ctrl+delete and ctrl+backspace.
2022-01-22 19:44:05 +00:00
Vincent Sanders
84ec9c2b2a tidy up GTK frontend initialisation 2021-02-22 23:04:02 +00:00
Vincent Sanders
3cf92011c2 split out gtk misc operations from gui module 2021-02-22 23:04:02 +00:00
Vincent Sanders
5db541a6d7 Improve target setup in makefiles
split out HOST TARGET and SUBTARGET generation into separate file.
split out target(frontend) specific tool settings into separate files.
2021-01-17 20:06:24 +00:00
Vincent Sanders
25c21e5fef add back/forward mouse button processing to GTK frontend 2021-01-02 09:49:25 +00: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
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
Vincent Sanders
410cb9a8fd gtk compile din resource list was missing pageinfo for gtk2 build 2020-08-15 09:49:27 +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
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
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
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
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
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
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
Michael Drake
79821cd9cf Frontends: Delete maps resource links. 2020-02-24 15:02:12 +00:00