summaryrefslogtreecommitdiff
path: root/riscos
diff options
context:
space:
mode:
authorAdrian Lees <adrian@aemulor.com>2007-07-20 23:51:55 +0000
committerAdrian Lees <adrian@aemulor.com>2007-07-20 23:51:55 +0000
commit84035a2a1d4faa12da8d79c8efa75975798ec99c (patch)
treebaaf877e6e3975b6e59943a804caedf8af87850b /riscos
parent1522bfeed68110620e6e477205058ca2d5abcb3a (diff)
downloadnetsurf-84035a2a1d4faa12da8d79c8efa75975798ec99c.tar.gz
netsurf-84035a2a1d4faa12da8d79c8efa75975798ec99c.tar.bz2
Use proper background colour for AW files using transparency
svn path=/trunk/netsurf/; revision=3447
Diffstat (limited to 'riscos')
-rw-r--r--riscos/artworks.c4
-rw-r--r--riscos/awrender.s9
2 files changed, 11 insertions, 2 deletions
diff --git a/riscos/artworks.c b/riscos/artworks.c
index 6ff060d8d..16e375f9e 100644
--- a/riscos/artworks.c
+++ b/riscos/artworks.c
@@ -51,6 +51,9 @@ struct awinfo_block {
int print_lowx;
int print_lowy;
int print_handle;
+ int print_x1;
+ int print_y1;
+ int bgcolour;
};
@@ -239,6 +242,7 @@ bool artworks_redraw(struct content *c, int x, int y,
info.print_lowx = 0;
info.print_lowy = 0;
info.print_handle = 0;
+ info.bgcolour = 0x20000000 | background_colour;
error = xos_read_vdu_variables((os_vdu_var_list*)&vars, vals);
if (error) {
diff --git a/riscos/awrender.s b/riscos/awrender.s
index f42916a8b..10127aba5 100644
--- a/riscos/awrender.s
+++ b/riscos/awrender.s
@@ -120,13 +120,18 @@ awrender_render MOV ip,sp
;
; entry R11 = reason code
; 0 = CallBackReason_Memory
+; 3 = CallBackReason_Interface
+; (0 => return capabilities)
; exit R0 => base of resizable block
; R1 = size of resizable block
; R2 => base of fixed block (or -1 if no fixed block)
- ; R3 = size of fixed block (or document in resizable block)
+; R3 = size of fixed block (or document in resizable block)
; VC if resize successful, VS and R0 => error otherwise
-aw_callback TEQ R11,#0
+aw_callback TEQ R11,#3
+ TEQEQ R0,#0
+ MOVEQ R0,#1<<10 ;background colour supplied
+ TEQ R11,#0
LDREQ R11,=aw_temp
MOVNE PC,R14