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

2458 Коммитов

Автор SHA1 Сообщение Дата
Matthew Leibowitz 2550d14410
[Android.Views] Refresh the surface when recreated (#1234)
Fixes #1232
2020-04-16 18:07:19 +02:00
Matthew Leibowitz cef01f15e6
Remove the [Preserve] attribute (#1229)
Since #1209, we no longer use reflection and the linker can go ahead and start removing things.
2020-04-13 14:26:04 +02:00
Matthew Leibowitz 2191818177
Make sure to not dispose system fonts (#1224)
Fixes #1220
2020-04-11 19:48:05 +02:00
Matthew Leibowitz 028c7459e5
A few changes to the way ArrayPool is used 2020-04-11 14:56:37 +02:00
Benedikt Stebner 5e94a9dc8e
Remove reflection usage for SKObject creation (#1209) 2020-04-11 13:43:09 +02:00
Immo Landwerth 6a3f6cdbac
Link Code of Conduct (#1216) 2020-04-08 11:00:42 +02:00
Matthew Leibowitz 39a8c9a071
Update cake to 0.37 (#1215) 2020-04-08 00:42:57 +02:00
Matthew Leibowitz 3d29c07bd7
Update expat native library to 2.2.9 (#1214) 2020-04-07 22:37:26 +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
Matthew Leibowitz 4559061eb7
Add a test for text align (#1207) 2020-04-05 12:33:07 +02:00
Matthew Leibowitz 14813f82e0
Resolve some concurrency issues (#1200)
* Rework the assembly fixtures
* Fix concurrency issue with handle registration
* Save several ms and useless allocations
* Make sure to correctly own objects
* Native objects may be disposed at any time
* Keep the bitmap alive when just using the pixmap
* Cache the "static" font styles
2020-04-03 13:25:20 +02:00
Matthew Leibowitz 234c93a775
Fixing issue #1187 (#1206)
* Passing null to SkPathMeasure results in AccessViolationException

Co-authored-by: Ziriax <bugfact@gmail.com>
2020-04-02 15:56:31 +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 aca03c2917
The lang parameter is not used, so remove it. (#1190)
Fixes #1189
2020-03-25 19:24:50 +02:00
Matthew Leibowitz 6dad08501f
Update README.md 2020-03-25 16:53:34 +02:00
Matthew Leibowitz 73bfe55954
Re-work views to avoid incorrect disposal (#1180) 2020-03-24 18:09:38 +02:00
Peter Verswyvelen bc50ace4c6
Merge filter factory overloads now accept null arguments (#1185)
- since null refers to the source graphics being drawn, passing null must be allowed
 - added unit test
2020-03-21 21:25:46 +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 34b6018ad7
Update all the build tools (#1175)
- Windows builds to use the v14.2 compilers
- Android to use the r19c (min Android 19)
- OpenJDK 13.0.2
- Tizen Studio 3.6
- Build on VS 2019
- Added build args to support preview/any VS installs
2020-03-14 03:24:10 +02:00
Matthew Leibowitz d3225f0bfe
Update azure-pipelines.yml 2020-03-09 23:57:56 +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 842d6c7946
Update the docs and changelog 2020-02-27 17:52:54 +02:00
Matthew Leibowitz fc9f030a08
A few changes and improvements (#1153)
A few changes and improvements:
- add some helper members
- improved the SKBitmap.CopyTo and related members
- added Encode(...) to SKBitmap
- added Encode(...) with a .NET Stream to SKBitmap, SKImage and SKPixmap
- start the move from SKEncoding to SKTextEncoding
- added more tests
- generator now has a validator for ensuring all declarations have implementations
- added equality members to all structs

Bugs Fixed
- Bitmaps copied with SKBitmap.Copy sometimes have incorrect colors
- The GC would sometimes collect a stream that was being used by a PDF document
2020-02-27 15:12:00 +02:00
Matthew Leibowitz a38b665127
Change paint encoding instead of throwing #1151 (#1152)
When the paint encoding is anything but GlyphId, the underlying allocation fails. This results in not only strange behaviour, but also invalid data. The run buffer is given a size, but nothing was allocated. This does 2 things:
- if a buffer is null, override the size
- if the encoding is not glyph, then change it temporarily
2020-02-21 20:30:13 +02:00
Matthew Leibowitz 8419446bb2
Revert "Change paint encoding instead of throwing #1151"
This reverts commit 3f6722185a.
2020-02-21 13:08:52 +02:00
Matthew Leibowitz 3f6722185a
Change paint encoding instead of throwing #1151
When the paint encoding is anything but GlyphId, the underlying allocation fails. This results in not only strange behaviour, but also invalid data. The run buffer is given a size, but nothing was allocated. This does 2 things:
- if a buffer is null, override the size
- if the encoding is not glyph, then change it temporarily
2020-02-21 13:08:43 +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
Matthew Leibowitz b79a59528d
Add a WPF for .NET Core sample (#1140) 2020-02-11 22:15:42 +02:00
Matthew Leibowitz e6f9334a4d
Queue the redraw. Fixes #1074 (#1135)
macOS and iOS draw immediately, so rather queue the redraw.
Not only does this fix the stack overflow, but is now more consistent with the other platforms.
2020-02-11 17:56:35 +02:00
Matthew Leibowitz 148a4d39ad
Prevent double load issue. Fixes #1118 (#1133)
For some reason, some controls (such as the ScrollViewer's LeftHeader, TopHeader, TopLeftHeader) are loaded twice.
We work around this by just adding a counter.
This will also fix any other controls that are a bit weird.
2020-02-09 20:07:55 +02:00
Matthew Leibowitz 5181109c45
Added more from SKImage (#1126) 2020-02-06 04:10:49 +02:00
Matthew Leibowitz 8f41230929
Added the rest of SKRegion members (#1125)
* Added the rest of SKRegion members. Fixes #1088
2020-02-05 15:59:15 +02:00
Matthew Leibowitz c5fa9aa04e
More Improvements (#1123)
* Make more members readonly (the generator now makes the equality members readonly)
* split the SKMatrix file into SKMatrix44, SKRotationScaleMatrix, SK3dView
* split the SKColorSpace structs/classes into a separate file
* reworked/renamed all the poorly designed SKMatrix (and related) members to be actually useful
* Make sure the obsolete items are invisible
* Make sure everything implements IEquatable<T>
* Update docs and changelogs
* ISKGLViewController is public
2020-02-04 19:00:41 +02:00
Matthew Leibowitz 7a2965a672
Improve Generator & Structs (#1122)
* Generator
- getters readonly 
- implement IEquatable

* Improve a few parts of the managed API
- mark obsolete members as invisible to the editor
- make struct getters readonly
- implement struct equality/hashcodes
- SKColor calculations use the SKColorF implementations
- some whitespace fixes to conform to styles
- split SKPMColor out into a new file
2020-02-03 12:58:54 +02:00
Matthew Leibowitz a358366921
Adding the SKColorF (with SKColorSpace) overloads (#1116)
* Adding SKColorF
* Improve the generator's sort
* Add SKColorF for SKPixmap
* Add the SKShader overloads and add some ToShader members
* Add some test for the SKColorF shaders
2020-02-01 20:58:44 +02:00
Matthew Leibowitz 00b16bd0b7
Update the build for the new team (#1120)
* Echo the mono version to be sure
* Always set the mono/msbuild version
  This is because even the native builds use the bootstrapper, which uses mono.
2020-02-01 19:11:24 +02:00
Matthew Leibowitz 5a62956fa4
Revert "Adding SKColorF #1115"
This reverts commit 150d210d93.
2020-01-28 14:36:41 +02:00
Matthew Leibowitz 150d210d93
Adding SKColorF #1115 2020-01-28 14:35:32 +02:00
Matthew Leibowitz b2d486ad17
Update Xamarin.Forms to v4.2.0.910310 (#1109)
* Use mono 6.4.0
* Things have moved around in Forms
2020-01-19 06:42:42 +02:00
Matthew Leibowitz 544abe8ce0
Make sure all things are listed in cgmanifest.json (#1103) 2020-01-15 06:37:12 +02:00
Matthew Leibowitz ea9dd88f76
Fix issues with buffer samples #1087 (#1098) 2020-01-14 04:42:20 +02:00
Zbigniew Pytka 54ec9301cc SKGLViewRenderer dispose corrections (#1095) 2020-01-10 17:56:28 +02:00
Matthew Leibowitz 48c9d72a56
Add a few more members for SKCanvas (#1090)
- DrawArc
- DrawAtlas
- DrawPatch
- DrawRoundRectDifference
- IsClipEmpty and IsClipRect
2020-01-08 16:46:04 +02:00
Matthew Leibowitz e2514cda18
[WIP] Add GTK views for Xamarin.Forms (#1089)
* Adding GTK extension methods
* Add initial implementation for Xamarin.Forms GTK
* Better exceptions
* GTK v2 does not build on Windows CI
   This is because of mono not being installed. I could install it, but typically
   this is not available on normal dev boxes. So, to make things easier, just
   build on mac and linux.
2020-01-08 15:35:23 +02:00
Void² a82cecb0e8 Fix broken antialiasing with UWP SKSwapChainPanel (#1086) 2019-12-31 14:03:23 +02:00
Matthew Leibowitz 247569e095
Fix some issues with macOS SKGLView (#1083)
Fixes some of #977
2019-12-28 17:22:23 +02:00
Matthew Leibowitz 2f36be4761
Multi-target SkiaSharp.Views.Windows.Forms (#1082)
Related to #1029
2019-12-27 23:01:05 +02:00
Alexandr 0c8b543a47 WPF Mouse Wheel on Touch Event (#1079) 2019-12-27 15:05:30 +02:00