diff options
author | Vladimir Glazounov <vg@openoffice.org> | 2005-03-07 16:32:58 +0000 |
---|---|---|
committer | Vladimir Glazounov <vg@openoffice.org> | 2005-03-07 16:32:58 +0000 |
commit | a2200b4f708e20f73f7492bb440d1cd2a00129c6 (patch) | |
tree | 153e4b3939bb3e87854171e00cb6a817c1a43076 /svx/source/sdr | |
parent | 6eb1d135a6be0f1c98a1aaa39f240cee35dd6390 (diff) |
INTEGRATION: CWS aw028 (1.7.178); FILE MERGED
2005/02/24 21:30:00 aw 1.7.178.1: #i42815#
Diffstat (limited to 'svx/source/sdr')
-rw-r--r-- | svx/source/sdr/contact/viewobjectcontact.cxx | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/svx/source/sdr/contact/viewobjectcontact.cxx b/svx/source/sdr/contact/viewobjectcontact.cxx index 5cda605e4b2a..87a33489093c 100644 --- a/svx/source/sdr/contact/viewobjectcontact.cxx +++ b/svx/source/sdr/contact/viewobjectcontact.cxx @@ -2,9 +2,9 @@ * * $RCSfile: viewobjectcontact.cxx,v $ * - * $Revision: 1.7 $ + * $Revision: 1.8 $ * - * last change: $Author: rt $ $Date: 2004-12-13 08:55:29 $ + * last change: $Author: vg $ $Date: 2005-03-07 17:32:58 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -439,11 +439,23 @@ namespace sdr } else { - // invalidate last paint area - GetObjectContact().InvalidatePartOfView(GetPaintedRectangle()); + // #i42815# + if(GetObjectContact().IsAreaVisible(GetPaintedRectangle())) + { + // invalidate last paint area + GetObjectContact().InvalidatePartOfView(GetPaintedRectangle()); - // change state to invalidated - mbIsInvalidated = sal_True; + // change state to invalidated + mbIsInvalidated = sal_True; + } + else + { + // #i42815# + // to-be-invalidated area is not visible in view, so object is painted + // but out of display region, e.g. scrolled out without redraw. In that + // case, give redraw a chance by checking if its new position gets visible + GetObjectContact().ObjectGettingPotentiallyVisible(*this); + } } } else |