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
cfbd16cf7e
Bitmap: Try to squash -Wtautological-constant-out-of-range-compare
2022-03-28 16:52:29 +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
01ce05ae65
Bitmap: Log the bitmap format that gets set.
2022-03-28 16:28:47 +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
feeda29c27
WebP: Optimisation: If it's opaque avoid any PMA conversions.
2022-03-28 16:06:02 +01:00
Michael Drake
4307230331
PNG: Allow support for premultiplied alpha.
...
LibPNG doesn't support premultiplied alpha, so now that the core
supports it, we can't just say that the decoded PNG is in the
core bitmap format.
So we now say it's in the core pixel layout, and if it's opaque
we say it has the same premultipled alpha setting as core bitmaps
because the conversion is costly and makes no difference.
On the other hand if it is not opaque we now admit that it is
not premultipled alpha so it gets converted if needed.
2022-03-28 16:05:47 +01:00
Michael Drake
c93ed6d63a
Bitmap: Add support for premultiplied alpha conversion.
2022-03-28 16:05:47 +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
6ecf0c2c6a
Desktop: Browser window: Squash theme install start warning.
2022-03-28 11:06:16 +01:00
Michael Drake
8ad21395be
About: Chart: Squash implicit declaration of strndup.
2022-03-28 11:06:16 +01:00
Michael Drake
d0da09a7ca
Image: JPEG: Decode to client bitmap format where possible.
2022-03-27 13:25:37 +01:00
Michael Drake
bbfc0ca353
Image: JPEG: Warn if not using libjpeg-turbo.
...
Replaces RISC OS warning with a more general and relevant one.
2022-03-27 11:03:43 +01:00
Michael Drake
d33af42911
Image: WebP: Decode to client bitmap format where possible.
2022-03-27 10:50:29 +01:00
Michael Drake
41995c3999
Image: WebP: Correct output buffer size for rowstride.
2022-03-27 10:41:27 +01:00
Michael Drake
fba7a349c0
Image: Sprite: Avoid multiple bitmap format conversions.
2022-03-27 10:17:48 +01:00
Michael Drake
694a3b4c98
Image: RSVG: Just use bitmap to client for conversion.
2022-03-27 09:58:21 +01:00
Michael Drake
b0e7de8bff
Image: PNG: Decode to client bitmap format.
2022-03-27 09:58:21 +01:00
Michael Drake
cde6a10ef4
Image: GIF: Decode directly to client bitmap format.
2022-03-27 09:58:21 +01:00
Michael Drake
c69bc8ba9c
Bitmap: Colour layout converter doesn't need to be exposed.
2022-03-27 09:58:21 +01:00
Michael Drake
05a0a6997e
Treeview: Use bitmap layout for bitmap generation.
2022-03-27 09:58:21 +01:00
Michael Drake
aeead57677
Bitmap: Convert pixel_to_colour to layout-aware function.
2022-03-27 09:58:21 +01:00
Michael Drake
d00c049d02
Bitmap: Move bitmap pixel to colour macro to bitmap header.
2022-03-27 09:58:21 +01:00
Michael Drake
1bbb499f88
Image: WebP: Call bitmap format conversion after decode.
...
Currently a no-op, because we decode to the default format
and no front end requests anything but the default format.
2022-03-27 09:58:21 +01:00
Michael Drake
df6ff85305
Image: RSVG: Call bitmap format conversion after decode.
...
Currently a no-op, because we decode to the default format
and no front end requests anything but the default format.
2022-03-27 09:58:21 +01:00
Michael Drake
052acc752c
Image: PNG: Call bitmap format conversion after decode.
...
Currently a no-op, because we decode to the default format
and no front end requests anything but the default format.
2022-03-26 15:45:00 +00:00
Michael Drake
7bf6a88c9c
Image: Sprite: Call bitmap format conversion after decode.
...
Currently a no-op, because we decode to the default format
and no front end requests anything but the default format.
2022-03-26 15:45:00 +00:00
Michael Drake
2f0fbbcaa0
Image: JPEG: Call bitmap format conversion after decode.
...
Currently a no-op, because we decode to the default format
and no front end requests anything but the default format.
2022-03-26 15:45:00 +00:00
Michael Drake
c7dce05437
Image: ICO: Abstract image decode into helper.
2022-03-26 15:45:00 +00:00
Michael Drake
60b12cd9fe
Image: ICO: Call bitmap format conversion after decode.
...
Currently a no-op, because we decode to the default format
and no front end requests anything but the default format.
2022-03-26 15:45:00 +00:00
Michael Drake
e7a355bf8d
Image: GIF: Call bitmap format conversion before/after decode.
...
Currently a no-op, because we decode to the default format
and no front end requests anything but the default format.
2022-03-26 15:45:00 +00:00
Michael Drake
27a89439a2
Image: BMP: Call bitmap format conversion after decode.
...
Currently a no-op, because we decode to the default format
and no front end requests anything but the default format.
2022-03-26 15:45:00 +00:00
Michael Drake
976f54bf48
Bitmap: Initialise layout for default pixel format.
2022-03-26 15:45:00 +00:00
Michael Drake
f27db5f80b
Bitmap: Add format conversion routines.
2022-03-26 15:45:00 +00:00
Michael Drake
e9d1a1fa9d
Include: Bitmap: Add API for setting core bitmap format.
2022-03-26 15:45:00 +00:00
Michael Drake
6011da798f
Include: Bitmap: Document bitmap pixel alignment requirement.
2022-03-26 14:13:56 +00:00
Michael Drake
725d1c9911
Treeview: Change bitmap generation to per-pixel channel indexing.
...
This will be needed when the core bitmap layout is client controlled.
2022-03-25 20:18:13 +00:00
Michael Drake
7f6a00ad2b
RISC OS: Include core bitmap header from RO bitmap header.
...
Squash warnings about enum declared inside parameter list.
2022-03-24 22:19:22 +00:00
Michael Drake
9892eefd0a
RISC OS: Squash unused variable warning.
2022-03-24 22:17:48 +00:00
Michael Drake
002c3c1a7c
Bitmap API: Clean up creation flags.
2022-03-24 18:09:28 +00:00
Michael Drake
c2d72d1e93
Include: Bitmap: Remove unused save callback.
2022-03-24 15:29:27 +00:00
Michael Drake
eca8c260a8
BeOS: Drop bitmap save callback entry; core doesn't use it.
2022-03-24 15:29:08 +00:00
Michael Drake
b0e61d1f32
Windows: Drop bitmap save callback entry; core doesn't use it.
2022-03-24 15:28:49 +00:00
Michael Drake
e104fd798b
RISC OS: Drop bitmap save callback entry; core doesn't use it.
2022-03-24 15:28:36 +00:00
Michael Drake
8e57f2a2f5
Monkey: Drop bitmap save callback entry; core doesn't use it.
2022-03-24 15:28:22 +00:00