Pre-release

0.2 Preview (February 2018)

@MSFTFox MSFTFox released this Feb 21, 2018

  • Add support for Visual Studio 2017 15.4.5
  • Update projections to target Windows SDK 10.0.16299
  • Address C++ compiler longevity issues

0.2 Preview (December 2017)

@MSFTFox MSFTFox released this Jan 5, 2018 · 10 commits to master since this release

  • libdispatch now supports dispatch_specific APIs
  • Localization now properly supports language preferences
  • OSSpinLock APIs have now been defined for public use
Pre-release

0.2 Preview (November 2017)

@rajsesh rajsesh released this Nov 18, 2017 · 19 commits to master since this release

  • Updates to support Visual Studio 15.4. The new version of Visual Studio is now required.
  • Includes source code for Objc2Winmd tool.
  • Bug fixes.

0.2 Preview (June 9, 2017)

@rajsesh rajsesh released this Jun 13, 2017 · 30 commits to master since this release

  • Support for URL Post
  • Support for UIBezierPath
  • Support for KVO set mutations
  • Better error reporting with unhandled exception filter
  • Winmd2Objc tool is now open sourced
  • Additional Foundation API coverage
  • Fixes regression in webview from last release

0.2 170510 (May 10, 2017)

@rajsesh rajsesh released this May 11, 2017 · 184 commits to master since this release

  • CoreGraphics and CoreText do no longer have dependencies on Foundation + UIKit (#2026)
  • Apps that are initialized with a storyboard now have a main UIWindow automatically created (#1836)
  • NSScanner is now fully supported: locale, copyWithZone:, localizedScannerWithString:, scanDecimal:, scanHexDouble:, scanHexFloat:, localizedScannerWithString: (#2083)
  • NSFileHandle is now fully supported: initWithCoder: / encodeWithCoder: / fileHandleWithStandardOutput / fileHandleWithStandardError / readInBackgroundAndNotify / NSFileHandleReadCompletionNotification (#2367)
  • CoreText
    • CTLine is now implemented via CFRuntimeBase (not via an NSObject) (#2357)
    • CTRun is now implemented via CFRuntimeBase (not via an NSObject) (#2356)
    • CTFrame is now implemented via CFRuntimeBase (not via an NSObject) (#2359)
    • CTFramesetter is now implemented via CFRuntimeBase (not via an NSObject) (#2358)
    • CTTypesetter is now implemented via CFRuntimeBase (and not an object) (#2355)
    • NSProxy is now supported (#2348)
  • Added support for NSExceptionHandler and related classes/methods (#2373)
  • Fixed hangs in NSData dataWithContentsOfURL (#2298)
  • Updated NSNotificationCenter to be thread safe (#2391)
  • VSImporter now automatically creates publisher folder manifest entries (#2307)
  • CoreGRaphics
    • Added support for CGColorSpace CGColorSpaceGetColorTableCount & CGColorSpaceGetColorTable (#2387)
    • CGPattern is now implemented via CFRuntimeBase (#2353)
    • CGColor is independent of UIColor (#2243)
  • NSArray
    • Completed NSArray KVO methods (#2068)
    • Added support for NSArray enumerateObjectWithIndexes:options:usingBlock: (#2072)
    • Added support for stubbed out NSArray index* methods (#2070)
    • Added support for Implement NSArray descriptionWithLocale* apis (#2073)
    • Added support for Implement NSArray URL init/write methods (#2069)
  • NSIndexSet
    • Added support for NSIndexSet index* apis (#2076)
    • NSIndexSet enumerate* apis #2077
  • Fixed 58 bugs since the last release

0.2 170411 (Apr 7, 2017)

@ashvarma ashvarma released this Apr 11, 2017 · 314 commits to master since this release

  • The Islandwood SDK is now available as a NuGet package, check here for more info
  • The projections for the Microsoft Store Services SDK are now available to use in your app and help you monetize your app and engage with your users
  • CoreText now support right-to-left languages and some more APIs: see #1981, #1982, #2023, #2024, #2025
  • Added support for more CoreGraphics APIs: see #1389, #1903, #2041, #2042, #2046, #2047, #2108
  • Added support for UILabel minimumScaleFactor
  • Fixed 48 bugs on GitHub since the latest release

0.2 170228 (Feb 28, 2017)

@ashvarma ashvarma released this Mar 3, 2017 · 687 commits to master since this release

  • In this release, we have switched CoreGraphics’ rendering backend from Cairo to Direct2D. While this should not have a widespread impact on your application, you may want to check over your code for any of the following conditions:
    • Use of bitmap contexts in ARGB (kCGBitmapByteOrder32Big | kCGImageAlphaFirst) or ABGR (kCGBitmapByteOrder32Little | kCGImageAlphaLast) is unsupported with Direct2D. Prefer the use of RGBA or BGRA bitmaps
    • Use of bitmap contexts in 8bpp gray (kCGImageAlphaNone plus a CGColorSpace in DeviceGray) may experience rendering aberrations (#1934)
    • Blend modes other than Source Over are currently unsupported (#1389)
    • CGPattern colors may draw with an unexpected offset (#2108)
    • CGContextClearRect will only clear rectangular regions. If you are using CGContextClearRect to clear the entire context, you will notice no regression. Other regions are untransformed and may clear unexpected pixels (#1744)
    • Radial gradients with different start and end points will not render as conical regions (#1615)
  • Added support to create custom gesture recognizers
  • UILabel
    • Added support for borders (via CALayer and the CoreAnimation/UIKit composition layer)
    • Added support for adjustFontSizeToFitWidth, sizeThatFits, and minimumScaleFactor
  • UIButton
    • Added support for borders (via CALayer and the CoreAnimation/UIKit composition layer)
    • Added support for buttonWithType:, system button now shows different visual when being pressed and all button type have different visual for disabled state
    • Added support for adjustsImageWhenHighligted and adjustsImageWhenDisabled
    • For more info about these changes and differences with the reference platform, see #1920
  • We addressed some performance and fit-and-finish issues with CoreText (#1850)
  • Improved performance of CF collections storing objc objects (#1898)
  • Fixed 62 bugs since our last release published on 2/1

0.2 170201 (February 1, 2017)

@ashvarma ashvarma released this Feb 1, 2017 · 698 commits to master since this release

  • BREAKING CHANGE: the Windows Bridge for iOS now requires the Windows RS1 SDK (10.0.14393) to work
    • Impact: WinObjC build.sln and sample apps included in the SDK will fail to build in case you’re using a previous version of the Windows SDK
    • Solution: Install the latest RS1 SDK (10.0.14393) per the instructions here
    • Note: this requirement is for developers only and does not impact users who download your applications from the Windows store. The minimum Windows version required to run your applications remains 10586
  • KNOWN ISSUE: [x86] CTCatalog - Font Functions - crashes when attempting to change Select nameKey #1865
    • We recently shifted Islandwood over to not using queued CATransactions for its UIElement property and hierarchy management; instead we perform the property/hierarchy changes synchronously on the backing Xaml elements as they’re issued by the app
    • This change was required to fix several other bugs, and it should also lead to a much more simplified Islandwood implementation layer. It’s worked pretty well so far, but it’s uncovered an interesting issue with ScrollViewer’s ScrollViewerViewChangedEvent”, tracked by #1865
    • If you’re running into issues similar to #1865, or if you notice quirky behavior around your animations or UX interaction, please file a GitHub issue to let us know. You can also try to temporarily switch back to legacy batched CATransactions by setting UIApplication.displayMode.useLegacyBatchedCATransactions = YES, but that support will be removed in the future
  • New CoreText APIs: CTFontDrawGlyphs, CTFontManagerRegisterFontsForURL, CTFontManagerRegisterGraphicsFont
  • Font files in app bundles are now supported so apps including font files can use these fonts on Windows
  • Fixed performance issues with CoreText (#1617, #1500)
  • Fixed 69 bugs since our last release published on 11/30. Check the full list here

0.2 161130 (November 30, 2016)

@tadam-msft tadam-msft released this Dec 5, 2016 · 831 commits to master since this release

  • Enabling Core Text using DWrite: added support for more APIs.
  • Enabling Core Graphics using D2D: added support for more APIs (available on the CGD2D branch only for now).
  • Composition and layout refactor: the spec describing this changes in details is available here.
  • Gesture interop and DManip: implemented an internal gesture recognizer for UIScrollview.
  • Added support for UIPasteboard methods: containsPasteboardTypes:, items, numberOfItems, UIPasteboardTypeListImage.
  • Added support for UITextField methods: font, adjustsFontSizeToFitWidth, editing and minimumFontSize.
  • Updated VSIX telemetry collection to provide more data on developer failures and warnings (scrubbed for privacy) for WinObjC projects that are outside of the NS_, UI_ and W* (Windows Universal) frameworks.
  • Added a new Radial Controller sample and tutorial to the WinObjC-Samples repo. Check it out for guidance on how to integrate the Surface Dial to your app.

0.2.161107 (November 7, 2016)

@rajsesh rajsesh released this Nov 7, 2016 · 926 commits to master since this release

  • Starting this month, we added support for locationInview, cancelsTouchesInView and numberofTouchesRequired for several UIGestureRecognizers:
    • locationInView now works for UILongPressGestureRecognizer and UISwipeGestureRecognizer.
    • cancelsTouchesInView now works for UITapGestureRecognizer, UIPinchGestureRecognizer, UIPanGestureRecognizer, UILongPressGestureRecognizer, UISwipeGestureRecognizer when the UIView is not nested in a UIScrollView.
    • numberofTouchesRequired now works for UISwipeGestureRecognizer.
  • Switched our implementation of UIButton to use a XAML Image and a XAML TextBlock control behind the scenes. This new implementation does not support some properties that were previously supported (see #1331 for more details).
  • Fixed issue where scrollViewDidEndDecelerating/scrollViewDidEndScrollingAnimation delegates didn't fire after finger-flicking in a UIScrollview.
  • CoreText now uses DWrite. This sets us up for more CoreText APIs support in future releases as well as higher perf when moving compositing to hardware acceleration (more about this change here and the full list of known issues is here). This release enables:
    • Full Kerning support.
    • Windows fonts support.
  • Support for apps registration of file types so they can support, handle and trigger their own activation when users activate registered file types.
  • Fixed issue where some apps doing lots of initialization on launch were getting killed by PLM.
  • Started migration for Core Graphics to use D2D. This is not part of the release, but current progress is available on the CGD2D branch.
  • Splitted WinRT projections into multiple DLLs for improved performance (no code changes are required to enable this).
  • VSImporter versioning and telemetry improvements to diagnose project import failures (see What kind of telemetry does the iOS bridge collect? in our FAQ).
  • RTObjCInterop.dll support for heterogeneous containers.
  • RTHelpers.h was moved under WinObjC/include/Platform/UWP.