hrev47407 adds 3 changesets to branch 'master' old head: 5732a559178fc0f44d431813ceeac09597653095 new head: ccb39874c8a92a4c80c7758bdf093318e042c24b overview: http://cgit.haiku-os.org/haiku/log/?qt=range&q=ccb3987+%5E5732a55 ---------------------------------------------------------------------------- 9576c4b: BRegion scaling: fix semantics to avoid holes/overlaps Thanks to Stippi for pointing this out. 33d60fa: BRegion: add ScaleBy(BSize) and user documentation. ccb3987: Add a package for NetSurf. * So I have at least one useable browser while I'm messing with Web+ [ Adrien Destugues <pulkomandy@xxxxxxxxxxxxx> ] ---------------------------------------------------------------------------- 5 files changed, 35 insertions(+), 2 deletions(-) build/jam/repositories/HaikuPorts/x86_gcc2 | 2 ++ docs/user/interface/Region.dox | 23 +++++++++++++++++++++++ headers/os/interface/Region.h | 1 + headers/private/interface/clipping.h | 4 ++-- src/kits/interface/Region.cpp | 7 +++++++ ############################################################################ Commit: 9576c4b742f3f5fb4f4ff33d8c95da06ba445f22 URL: http://cgit.haiku-os.org/haiku/commit/?id=9576c4b Author: Adrien Destugues <pulkomandy@xxxxxxxxxxxxx> Date: Thu Jun 19 16:31:34 2014 UTC BRegion scaling: fix semantics to avoid holes/overlaps Thanks to Stippi for pointing this out. ---------------------------------------------------------------------------- diff --git a/headers/private/interface/clipping.h b/headers/private/interface/clipping.h index 1d53c42..e0a31f8 100644 --- a/headers/private/interface/clipping.h +++ b/headers/private/interface/clipping.h @@ -86,8 +86,8 @@ scale_rect(clipping_rect& rect, float x, float y) { rect.left = (int)(rect.left * x); rect.top = (int)(rect.top * y); - rect.right = (int)(rect.right * x); - rect.bottom = (int)(rect.bottom * y); + rect.right = (int)((rect.right + 1) * x) - 1; + rect.bottom = (int)((rect.bottom + 1) * y) - 1; } ############################################################################ Commit: 33d60fa21fb5df00b4309e20af8b79de506ac858 URL: http://cgit.haiku-os.org/haiku/commit/?id=33d60fa Author: Adrien Destugues <pulkomandy@xxxxxxxxxxxxx> Date: Thu Jun 19 16:40:29 2014 UTC BRegion: add ScaleBy(BSize) and user documentation. ---------------------------------------------------------------------------- diff --git a/docs/user/interface/Region.dox b/docs/user/interface/Region.dox index 4162a08..738fb8a 100644 --- a/docs/user/interface/Region.dox +++ b/docs/user/interface/Region.dox @@ -333,6 +333,29 @@ /*! + \fn void BRegion::ScaleBy(BSize scale) + \brief Resize each of the contained rectangles by the given factor + and recalculates the region's bounds. + + \param scale The scale factor + + \since Haiku R1 +*/ + + +/*! + \fn void BRegion::ScaleBy(float x, float y) + \brief Resize each of the contained rectangles by the given factors + and recalculates the region's bounds. + + \param x The horizontal scale. + \param y The vertical scale. + + \since Haiku R1 +*/ + + +/*! \fn void BRegion::MakeEmpty() \brief Empties the region so that it doesn't containt any rects, and invalidates its bounds. diff --git a/headers/os/interface/Region.h b/headers/os/interface/Region.h index 07ad81e..b5e7290 100644 --- a/headers/os/interface/Region.h +++ b/headers/os/interface/Region.h @@ -59,6 +59,7 @@ public: void OffsetBy(const BPoint& point); void OffsetBy(int32 x, int32 y); + void ScaleBy(BSize scale); void ScaleBy(float x, float y); void MakeEmpty(); diff --git a/src/kits/interface/Region.cpp b/src/kits/interface/Region.cpp index 1ce133c..e5b77d4 100644 --- a/src/kits/interface/Region.cpp +++ b/src/kits/interface/Region.cpp @@ -307,6 +307,13 @@ BRegion::OffsetBy(int32 x, int32 y) void +BRegion::ScaleBy(BSize scale) +{ + ScaleBy(scale.Width(), scale.Height()); +} + + +void BRegion::ScaleBy(float x, float y) { if (x == 1.0 && y == 1.0) ############################################################################ Revision: hrev47407 Commit: ccb39874c8a92a4c80c7758bdf093318e042c24b URL: http://cgit.haiku-os.org/haiku/commit/?id=ccb3987 Author: Adrien Destugues <pulkomandy@xxxxxxxxxxxxx> Date: Fri Jun 20 11:50:15 2014 UTC Add a package for NetSurf. * So I have at least one useable browser while I'm messing with Web+ ---------------------------------------------------------------------------- diff --git a/build/jam/repositories/HaikuPorts/x86_gcc2 b/build/jam/repositories/HaikuPorts/x86_gcc2 index 29ea808..7282731 100644 --- a/build/jam/repositories/HaikuPorts/x86_gcc2 +++ b/build/jam/repositories/HaikuPorts/x86_gcc2 @@ -154,6 +154,7 @@ RemotePackageRepository HaikuPorts neon-0.29.6-6 neon_devel-0.29.6-6 netcat-1.10-1 + netsurf-3.1-1 openssh-6.0p1-8 # sync openssl with secondary architecture (x86) openssl-1.0.0m-1 @@ -503,6 +504,7 @@ RemotePackageRepository HaikuPorts ncurses neon netcat + netsurf ninja_x86 openal_x86 openssh