summaryrefslogtreecommitdiff
path: root/riscos/font.c
diff options
context:
space:
mode:
authorRichard Wilson <rjw@netsurf-browser.org>2004-07-20 20:02:59 +0000
committerRichard Wilson <rjw@netsurf-browser.org>2004-07-20 20:02:59 +0000
commit6ee54bec7aefca571b9f3900e339e21e90123016 (patch)
treecd90583e5e50a6b4f0c7ac6fc2b68391491d8acd /riscos/font.c
parent3a7261fa101548d4ff8ae5c8dea47c5aff71b14c (diff)
downloadnetsurf-6ee54bec7aefca571b9f3900e339e21e90123016.tar.gz
netsurf-6ee54bec7aefca571b9f3900e339e21e90123016.tar.bz2
[project @ 2004-07-20 20:02:59 by rjw]
Fix for buffered text plotting. GUI control over font blending and buffering. svn path=/import/netsurf/; revision=1129
Diffstat (limited to 'riscos/font.c')
-rw-r--r--riscos/font.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/riscos/font.c b/riscos/font.c
index aa6c14307..6e2064438 100644
--- a/riscos/font.c
+++ b/riscos/font.c
@@ -16,6 +16,7 @@
#include <assert.h>
#include <stdio.h>
#include "oslib/font.h"
+#include "oslib/os.h"
#include "netsurf/css/css.h"
#include "netsurf/desktop/gui.h"
#include "netsurf/render/font.h"
@@ -648,13 +649,18 @@ void nsfont_paint(struct font_data *data, const char *text,
{
os_error *error;
unsigned int flags;
+ const int var_input[3] = {136, 137, -1}; /* XOrig, YOrig, Terminator */
+ int var_output[3];
+ bool background_blending = option_background_blending;
flags = font_OS_UNITS | font_GIVEN_FONT | font_KERN;
if (trfm != NULL)
flags |= font_GIVEN_TRFM;
/* font background blending (RO3.7+) */
- if (option_background_blending) {
+ if (ro_gui_current_redraw_gui)
+ background_blending = ro_gui_current_redraw_gui->option.background_blending;
+ if (background_blending) {
int version;
/* Font manager versions below 3.35 complain
@@ -669,6 +675,12 @@ void nsfont_paint(struct font_data *data, const char *text,
assert(data != NULL);
assert(text != NULL);
+ /* adjust by the origin */
+ xos_read_vdu_variables((const os_vdu_var_list *)&var_input, (int *)&var_output);
+ xpos += var_output[0];
+ ypos += var_output[1];
+
+
switch (data->ftype) {
case FONTTYPE_UFONT:
flags |= font_GIVEN_LENGTH;