diff options
| author | Pietro Gagliardi <[email protected]> | 2014-05-17 20:21:48 -0400 |
|---|---|---|
| committer | Pietro Gagliardi <[email protected]> | 2014-05-17 20:21:48 -0400 |
| commit | 216b5c183c0dad1e510969418eb3509e1df1d713 (patch) | |
| tree | 183fbf2b3206be1671eeaa4dfe3e37278ee4d6a1 | |
| parent | b9c12da83841b9f967f2579e81389ceade66dcb3 (diff) | |
Made drawing of NSScrollView backgrounds explicit on Mac OS X. This is what Interface Builder sets for NSTableViews, so we do that too for Listbox. This also means NSScrollView draws the background for our Areas, settling the clear clip rect TODO.
| -rw-r--r-- | area_darwin.go | 2 | ||||
| -rw-r--r-- | objc_darwin.m | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/area_darwin.go b/area_darwin.go index 3211822..b24a0dd 100644 --- a/area_darwin.go +++ b/area_darwin.go @@ -27,7 +27,7 @@ func areaInScrollView(scrollview C.id) C.id { //export areaView_drawRect func areaView_drawRect(self C.id, rect C.struct_xrect) { s := getSysData(self) - // TODO clear clip rect + // no need to clear the clip rect; the NSScrollView does that for us (see the setDrawsBackground: call in objc_darwin.m) // rectangles in Cocoa are origin/size, not point0/point1; if we don't watch for this, weird things will happen when scrolling cliprect := image.Rect(int(rect.x), int(rect.y), int(rect.x + rect.width), int(rect.y + rect.height)) max := C.frame(self) diff --git a/objc_darwin.m b/objc_darwin.m index 09c2ec2..9628837 100644 --- a/objc_darwin.m +++ b/objc_darwin.m @@ -50,6 +50,8 @@ id makeScrollView(id content) [scrollview setHasHorizontalScroller:YES]; [scrollview setHasVerticalScroller:YES]; [scrollview setAutohidesScrollers:YES]; + // Interface Builder sets this for NSTableViews; we also want this on Areas + [scrollview setDrawsBackground:YES]; [scrollview setDocumentView:toNSView(content)]; return scrollview; } |
