summaryrefslogtreecommitdiff
path: root/frontends
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2017-06-10 11:15:20 +0100
committerMichael Drake <tlsa@netsurf-browser.org>2017-06-10 11:15:20 +0100
commit368b03bffb8dcf2dc2a306f29756ca882b3fee51 (patch)
treed8bc4572880284297eed622c3c9bed0095191841 /frontends
parent283d921f346d44bd8d78fdac6a36b5a8516ca722 (diff)
downloadnetsurf-368b03bffb8dcf2dc2a306f29756ca882b3fee51.tar.gz
netsurf-368b03bffb8dcf2dc2a306f29756ca882b3fee51.tar.bz2
Local history: Pass clip rectangle around as struct.
Diffstat (limited to 'frontends')
-rwxr-xr-xfrontends/amiga/history_local.c9
-rw-r--r--frontends/framebuffer/localhistory.c12
-rw-r--r--frontends/windows/local_history.c6
3 files changed, 14 insertions, 13 deletions
diff --git a/frontends/amiga/history_local.c b/frontends/amiga/history_local.c
index 368557dd6..8d1f4ac4a 100755
--- a/frontends/amiga/history_local.c
+++ b/frontends/amiga/history_local.c
@@ -84,6 +84,7 @@ static void ami_history_redraw(struct history_window *hw)
{
struct IBox *bbox;
ULONG xs,ys;
+ struct rect clip;
struct redraw_context ctx = {
.interactive = true,
.background_images = true,
@@ -102,9 +103,11 @@ static void ami_history_redraw(struct history_window *hw)
SetRPAttrs(glob->rp, RPTAG_APenColor, 0xffffffff, TAG_DONE);
RectFill(glob->rp, 0, 0, bbox->Width - 1, bbox->Height - 1);
*/
-
- browser_window_history_redraw_rectangle(hw->gw->bw, xs, ys,
- bbox->Width + xs, bbox->Height + ys, 0, 0, &ctx);
+ clip.x0 = xs;
+ clip.y0 = ys;
+ clip.x1 = bbox->Width + xs;
+ clip.y1 = bbox->Height + ys;
+ browser_window_history_redraw_rectangle(hw->gw->bw, &clip, 0, 0, &ctx);
ami_clearclipreg(hw->gg);
ami_history_update_extent(hw);
diff --git a/frontends/framebuffer/localhistory.c b/frontends/framebuffer/localhistory.c
index 3192f0747..b91c9470b 100644
--- a/frontends/framebuffer/localhistory.c
+++ b/frontends/framebuffer/localhistory.c
@@ -36,6 +36,7 @@ localhistory_redraw(fbtk_widget_t *widget, fbtk_callback_info *cbi)
{
struct gui_localhistory *glh = cbi->context;
nsfb_bbox_t rbox;
+ struct rect clip;
struct redraw_context ctx = {
.interactive = true,
@@ -53,12 +54,13 @@ localhistory_redraw(fbtk_widget_t *widget, fbtk_callback_info *cbi)
nsfb_plot_rectangle_fill(fbtk_get_nsfb(widget), &rbox, 0xffffffff);
+ clip.x0 = glh->scrollx;
+ clip.y0 = glh->scrolly;
+ clip.x1 = fbtk_get_width(widget) + glh->scrollx;
+ clip.y0 = fbtk_get_height(widget) + glh->scrolly;
+
browser_window_history_redraw_rectangle(glh->bw,
- glh->scrollx,
- glh->scrolly,
- fbtk_get_width(widget) + glh->scrollx,
- fbtk_get_height(widget) + glh->scrolly,
- 0, 0, &ctx);
+ &clip, 0, 0, &ctx);
nsfb_update(fbtk_get_nsfb(widget), &rbox);
diff --git a/frontends/windows/local_history.c b/frontends/windows/local_history.c
index f4474236e..205ebfe94 100644
--- a/frontends/windows/local_history.c
+++ b/frontends/windows/local_history.c
@@ -111,11 +111,7 @@ nsw32_local_history_draw(struct nsw32_corewindow *nsw32_cw,
lhw = (struct nsw32_local_history_window *)nsw32_cw;
- local_history_redraw(lhw->session,
- r->x0 - scrollx,
- r->y0 - scrolly,
- r,
- &ctx);
+ local_history_redraw(lhw->session, -scrollx, -scrolly, r, &ctx);
return NSERROR_OK;
}