Граф коммитов

382 Коммитов

Автор SHA1 Сообщение Дата
Matthew Leibowitz 66ed32a5a0
Build and include all the emscripten version for WASM (#1590)
* Build for the most common Emscripten versions
* Update MSBuild.Sdk.Extras for .NET 5
* Do not rely on WasmHead to detect WebAssembly (#1550)

Co-authored-by: Jerome Laban <jerome.laban@nventive.com>
2021-01-27 06:07:39 +02:00
Matthew Leibowitz 870d0fcc19
Load the fonts on iOS (#1539) 2020-10-28 10:32:31 +02:00
Matthew Leibowitz fef54f6e37
Generate the interop with harfbuzz (#1447)
* Improve the generator
* Fix up for WASM
* Some fixes for the cookies
* Add support for HarfBuzzSharp on WASM
* New Xcode
* Add a basic HarfBuzz test
2020-10-07 15:34:05 +02:00
Matthew Leibowitz 74a31ace5c
Update Uno Platform to v3.0 (#1489)
Co-authored-by: Jerome Laban <jerome.laban@nventive.com>
Co-authored-by: Jérôme Laban <jlaban@gmail.com>
2020-10-01 17:56:09 +02:00
Matthew Leibowitz 2d811fb6d1
Update MSBuild.Sdk.Extras (#1511) 2020-09-27 17:28:47 +02:00
Matthew Leibowitz 2e83c18263
[macOS] Use NeedsDisplay instead of Display (#1475)
This will prevent the double paint found in #1467
2020-08-27 21:36:03 +02:00
Matthew Leibowitz d0562fc3d7
Add a few more GPU debugging members (#1478) 2020-08-25 14:34:58 +02:00
Matthew Leibowitz c0952f9036
Use the version of OpenTK that is correctly sn (#1480)
Fixes #1479
2020-08-25 04:46:29 +02:00
Matthew Leibowitz b87485289c
[UWP] Don't block the UI thread when invalidating (#1468) 2020-08-20 01:54:32 +02:00
Matthew Leibowitz d5d685a580
Add an extensions for SKColorF (#1469) 2020-08-18 02:23:04 +02:00
Matthew Leibowitz b3f5975cd8
Add the GPU views for Uno Platform (#1429)
* Add the GPU views for the platforms
* Add the render loop for the platforms
* Fix the samples for infinite recursion
* Added the GL views to the gallery
2020-07-27 18:46:04 +02:00
Matthew Leibowitz 1fa3daddcc
Update the Uno package versions (#1426) 2020-07-24 03:57:30 +02:00
Matthew Leibowitz c62ce46ef1
Some performance improvements for Forms (#1424) 2020-07-23 21:35:29 +02:00
Matthew Leibowitz b84f667eae
Add WASM Support for Uno Platform (#1333)
Co-authored-by: Jérôme Laban <jerome.laban@nventive.com>
Co-authored-by: Geoffrey Huntley <ghuntley@ghuntley.com>
Co-authored-by: Martin Zikmund <martin@zikmund.dev>
2020-07-21 03:22:38 +02:00
Matthew Leibowitz 99356f9b7e
Add more Uno things (#1420) 2020-07-20 12:21:44 +02:00
Matthew Leibowitz 4bc170cdde
Added Uno Platform support (#1396)
Added the initial Uno implementations, code pulled from:
 - https://github.com/unoplatform/Uno.SkiaSharp
 - https://github.com/mono/SkiaSharp/pull/1333

Co-authored-by: Jérôme Laban <jerome.laban@nventive.com>
Co-authored-by: Geoffrey Huntley <ghuntley@ghuntley.com>
Co-authored-by: Martin Zikmund <martin@zikmund.dev>
2020-07-14 01:46:50 +02:00
Matthew Leibowitz aa6a178701
Instead of asking for the context, find it
Related to #1388
2020-07-08 13:52:51 +02:00
Matthew Leibowitz 39bde0d18a
Explicitly request GL ES 3.x in case we have it (#1388) 2020-07-08 06:45:28 +02:00
Matthew Leibowitz c908d6d71d
Update the version of Clang used to build for Tizen (#1386) 2020-07-07 19:15:40 +02:00
Matthew Leibowitz e1c2c972d6
Retry a couple of times (#1360) 2020-06-28 02:24:20 +02:00
Matthew Leibowitz a5d30e95a6
Build SkiaSharp for Win32 ARM64 (#1358)
* Build SkiaSharp for Win32 ARM64
* Drop net45 so we can use new and more performant things
2020-06-27 02:41:26 +02:00
Matthew Leibowitz a4754b6284
Merge pull request #1332 from mono/dev/reduce-m44 2020-06-25 03:07:42 +02:00
Matthew Leibowitz 15cf3ac53f
Make sure to handle the missing properties 2020-06-24 03:03:49 +02:00
Matthew Leibowitz 5e4c9e170c
Add an API to check the versions 2020-06-24 02:34:30 +02:00
Matthew Leibowitz eac6e09ed3
Yup, that works... 2020-06-20 02:10:08 +02:00
Matthew Leibowitz 32811fc838
Do everything! 2020-06-20 00:36:14 +02:00
Matthew Leibowitz c126e6f666
Looks like we have to get a bit weird 2020-06-19 23:34:34 +02:00
Matthew Leibowitz d5325f3205
Make sure netstandard is referenced 2020-06-19 22:57:47 +02:00
Matthew Leibowitz 82dacd0ab5
Rename the type to avoid collisions 2020-06-11 23:33:34 +02:00
Matthew Leibowitz 282638783f
Update Samples (#1313)
* Update samples (new things, AndroidX, updated versions)
* Update icons
* Move away from all obsolete uses
* Temporary workaround for https://developercommunity.visualstudio.com/content/problem/1057547/incorrect-file-validation-for-the-installappleprov.html
* Fix the API diff
2020-06-03 23:30:51 +02:00
Matthew Leibowitz 98bfa94da7
Improve the GPU APIs (#1294)
* Improve the Vulkan APIs
  - removed the context argument as this is unused as well as an older C/C++ feature
  - added a SharpVk version of the GetProc property.
* Removed the context argument (this is more an older C/C++ feature/requirement)
* Expose the WebGL APIs
* Improve the GRGlInterface and GPU delegates
  - removing the object context for the GPU construction
    - obsoleted GRGlGetProcDelegate in favour of the better named GRGlGetProcedureAddressDelegate
    - renamed GRVkGetProcDelegate to GRVkGetProcedureAddressDelegate
    - use "ProcedureAddress" instead of "Proc" to show that it is the "address" not the actual procedure
  - reworked the GRGlInterface
    - use the new non-context delegates
    - use better naming: Create*
    - adding WebGL
  - created a SharpVk-specific delegate GRSharpVkGetProcedureAddressDelegate
    - use actual types instead of IntPtr
* Reduce the using obsolete warnings
  - still a few left, mainly the colorspace and text blob
* Switch the way GRGlInterface.Create() works
  - first try OpenGL as that is actually what is expected
  - don't explode on an error, return null, like the rest
* Update API usages
2020-05-17 22:11:59 +02:00
Matthew Leibowitz 6baf53f3ab
Vulkan Support for Win32 (and APIs for everyone as well) (#1010)
Add support for Vulkan on Win32 (#252)
* Bindings for m80 Vulkan backend context and related types. (#1276, #897)
* Added tests for Vulkan
* Rename the SKColorType enum values (#1222)

Co-authored-by: Davide Tuccilli <davide@gritworld.com>
Co-authored-by: Davide Tuccilli <d.tuccilli@gmail.com>
Co-authored-by: Dariusz Komosiński <darek.komosinski@gmail.com>
2020-05-14 03:01:38 +02:00
Matthew Leibowitz 401cf0336f
Merge 'master' into 'develop' 2020-05-10 17:06:57 +02:00
Matthew Leibowitz 5ea66f2a4a
Performance Improvements (#1277)
* Correct company name
* Fix targets file
* Hide native files from project tree
* Add benchmark project
* Add a feature to skip the object registration
   - ISKSkipObjectRegistration
   - objects implementing this interface will not be registered in the global dictionary
   - major perf boos (2.84x) due to not having to look up in a dictionary
   - use direct constructor instead of object factory
* Throw an exception in "debug" builds
2020-05-10 16:56:12 +02:00
Matthew Leibowitz 1c25b69b02
Merge 'master' into 'develop' 2020-05-02 14:44:32 +02:00
Matthew Leibowitz 1aee294bb0
Ensure that the assemblies are in fact signed (#1268) 2020-05-02 10:05:44 +02:00
Matthew Leibowitz ff30a59f73
Merge remote-tracking branch 'origin/master' into develop 2020-04-30 12:44:44 +02:00
Matthew Leibowitz 22fcbe7c57
Prevent the GC from collecting "this" and "pixels" (#1258)
* Prevent the GC from collection "this"
* GC.KeepAlive for cases where we only use pixels pointers
2020-04-29 03:51:45 +02:00
Matthew Leibowitz 9ad68b65d4
Update to a much later version of skia (m80) (#986)
Several iterations of development to come to this:

* [UWP] Fix the ARM build and add ARM64
* [Win32] GDI is optional - and we don't want it
* Update harfbuzz to v2.6.2
* Use Docker
* Use a later version of the linux tools
* Use VS 2019
* Use Xcode 11
* Go all in with MSVC 14.2
* Disable the Tizen builds for now
* Add support for manually specifying VS (This can be done in a few ways, but the common way would be: --vsinstall='C:\PF\MVS\XXX\YYY')
* Update OpenJDK and Tizen Studio
* Using C++ 17
* Also added a THROW_ON_TEST_FAILURE env var to allow previews to be put out when tests are still failing
* Support basic text alignment
* Implement breakText in native code.
2020-04-28 22:20:20 +02:00
Matthew Leibowitz 221a96b815
Null out the field when disposing. Fixes #960 (#1256)
Not sure why iOS is drawing a disposed object, but just be safe.
2020-04-28 17:44:08 +02:00
Matthew Leibowitz 354d85d129
Always reference netstandard (#1250) 2020-04-26 10:29:35 +02:00
Matthew Leibowitz 2550d14410
[Android.Views] Refresh the surface when recreated (#1234)
Fixes #1232
2020-04-16 18:07:19 +02:00
Michael S. Scherotter 58a9a7b9c2
Update SKTouchHandler.cs to fix crash bug caused by passing incorrect parameter, added pressure and eraser handling (#1212)
* Fixed crash bug where id was incorrectly passed instead pointer to evt.GetToolType().
* Added stylus pressure for Android
* Added eraser handling - to map to middle button.
2020-04-07 11:10:12 +02:00
Matthew Leibowitz 792b9056f3
Release the skia objects when the view is unloaded (#1213)
* Release the skia objects when the view is unloaded

This was originally changed in 8039d0d0bb
for the AngleSwapChainPanel view. But, this was not also extended to include
the skia objects in SKSwapChainPanel.

Nothing needs to be re-created because it is all done in the first paint operation.
2020-04-07 01:03:49 +02:00
Michael S. Scherotter 689017845b
Added device type to touch events (touch, mouse, pen) (#1191) 2020-03-30 13:02:44 +02:00
Matthew Leibowitz 73bfe55954
Re-work views to avoid incorrect disposal (#1180) 2020-03-24 18:09:38 +02:00
Matthew Leibowitz 5e48f0dea2
Add the expected overload for newer versions XF.Tizen (#1117)
- Updating Xamarin.Forms to v4.4.0.991757
- Work around the portable PDB issue for UWP for now
2020-03-15 15:24:45 +02:00
Matthew Leibowitz ee0e668235
Use vcpkg to build ANGLE (#1158)
* Use vcpkg to build ANGLE
* Use a separate step to build ANGLE for now
* Use the new ANGLE constants
2020-03-03 00:09:52 +02:00
Matthew Leibowitz b0088442cc
Make sure the view is still in the hierarchy (#1143)
In the case of virtualized list views, the control may no longer be in screen, so we have to ignore touch events.
Fixes #978
2020-02-13 14:25:32 +02:00
Matthew Leibowitz 089c26314a
Before drawing, MakeCurrent (#1141)
Fixes #920
2020-02-12 01:42:24 +02:00