dotnet / dotnet/xcsync

Support IB_DESIGNABLE and IBInspectable to improve custom views development experience

Open
#231 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
25
Forks
10
Avg merge
12h 50m
Merged PRs (30d)
10

Description

As suggested in the net-macios repo (https://github.com/dotnet/macios/issues/8559#issuecomment-3333981911) I moving the issue in the xcsync repo.
Here the original issue text:

Working on Xamarin Mac project creating a custom view does facilitate the experience working with interface builder as not support IB_DESIGNABLE and IBInspectable keywords as described in docs [here](https://docs.microsoft.com/en-gb/xamarin/ios/user-interface/designer/ios-designable-controls-walkthrough)

### Steps to Reproduce
1. Create an xamarin mac project
2. Create and register a custom view with `DesignTimeVisible(true) attribute
3. Add a property `Browsable(true)` attribute
4. Open Xcode and check translated class into Objective-C

### Expected Behavior
The custom view should expose IB_DESIGNABLE header level and IBInspectable at property definition in order to support visualization on Xcode.

### Actual Behavior
custom view created without IB_DESIGNABLE and IBInspectable

### Environment
```
=== Visual Studio Community 2019 for Mac ===

Version 8.5.4 (build 12)
Installation UUID: fd75eb7e-8e28-4ec1-ac3c-be5df7d51bec
GTK+ 2.24.23 (Raleigh theme)
Xamarin.Mac 6.14.1.39 (d16-5 / 30e8706b4)

Package version: 608000123

=== Mono Framework MDK ===

Runtime:
Mono 6.8.0.123 (2019-10/1d0d939dc30) (64-bit)
Package version: 608000123

=== Roslyn (Language Service) ===

3.5.0-beta4-20125-04+1baa0b3063238ed752ad1f0368b1df6b6901373e

=== NuGet ===

Version: 5.4.0.6315

=== .NET Core SDK ===

SDK: /usr/local/share/dotnet/sdk/3.1.201/Sdks
SDK Version: 3.1.201
MSBuild SDKs: /Library/Frameworks/Mono.framework/Versions/6.8.0/lib/mono/msbuild/Current/bin/Sdks

=== .NET Core Runtime ===

Runtime: /usr/local/share/dotnet/dotnet
Runtime Versions:
3.1.3
2.1.17

=== Xamarin.Profiler ===

'/Applications/Xamarin Profiler.app' not found

=== Updater ===

Version: 11

=== Apple Developer Tools ===

Xcode 11.4.1 (16137)
Build 11E503a

=== Xamarin.Mac ===

Version: 6.16.0.13 (Visual Studio Community)
Hash: b75deaf82
Branch: d16-5-xcode11.4
Build date: 2020-04-01 21:33:18-0400

=== Xamarin.iOS ===

Xamarin.iOS not installed.
Can't find mtouch or the Version file at /Library/Frameworks/Xamarin.iOS.framework/Versions/Current.

=== Xamarin Designer ===

Version: 16.5.0.471
Hash: 35aa4889d
Branch: remotes/origin/d16-5
Build date: 2020-02-25 00:52:08 UTC

=== Xamarin.Android ===

Not Installed

=== Microsoft Mobile OpenJDK ===

Java SDK: /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
1.8.0_252
Android Designer EPL code available here:
https://github.com/xamarin/AndroidDesigner.EPL

=== Android SDK Manager ===

Version: 16.5.0.39
Hash: 6fb4c79
Branch: remotes/origin/d16-5
Build date: 2020-04-15 20:49:08 UTC

=== Android Device Manager ===

Version: 16.5.0.71
Hash: 49194e8
Branch: remotes/origin/d16-5~1
Build date: 2020-04-15 20:49:28 UTC

=== Xamarin Inspector ===

Version: 1.4.3
Hash: db27525
Branch: 1.4-release
Build date: Mon, 09 Jul 2018 21:20:18 GMT
Client compatibility: 1

=== Build Information ===

Release ID: 805040012
Git revision: 7642369422103e19b0b8d29ddc211abf2fd32607
Build date: 2020-04-16 08:55:15-04
Build branch: release-8.5
Xamarin extensions: 7642369422103e19b0b8d29ddc211abf2fd32607

=== Operating System ===

Mac OS X 10.15.4
Darwin 19.4.0 Darwin Kernel Version 19.4.0
Wed Mar 4 22:28:40 PST 2020
root:xnu-6153.101.6~15/RELEASE_X86_64 x86_64
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.