1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-19 01:04:20 +00:00
Commit graph

574 commits

Author SHA1 Message Date
attila
7fc75c35f9
Android: Suppress availability macro warning 2025-05-19 13:30:27 +01:00
Oli
6972c4f0e3 Direct2D: Fix ETW tracing build errors
This makes Direct2DMetrics and current frameId accessible to implementation subclasses.

It also replaces JUCE_WRITE_TRACE_LOG with JUCE_WRITE_TRACE_LOG_VA as intended in original implementation.

Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-30 10:50:52 +01:00
reuk
243d3756fc Direct2D: Hide implementation of RectangleListSpriteBatch::fillRectangles 2025-04-24 13:58:24 +01:00
reuk
49948d5dd4 Direct2D: Remove unused declarations 2025-04-24 13:58:24 +01:00
reuk
98d4ddef87 Direct2D: Move MemoryFontFileLoader to DirectX.cpp 2025-04-24 13:58:24 +01:00
reuk
234e75b2be Direct2D: Move MemoryFontFileFileStream to DirectX.cpp 2025-04-24 13:58:24 +01:00
reuk
96683e49a1 Direct2D: Move FontFileEnumerator to DirectX.cpp 2025-04-24 13:58:24 +01:00
reuk
8d29edec92 Direct2D: Move CompositionTree to Direct2DHwndContext.cpp 2025-04-24 13:58:24 +01:00
reuk
1f6c1737eb Direct2D: Remove declaration of makeGradientStopCollection() 2025-04-24 13:58:24 +01:00
reuk
8d33428dcf Direct2D: Move WindowsScopedEvent to Direct2DHwndContext.cpp 2025-04-24 13:58:24 +01:00
reuk
f56c7faf40 Direct2D: Move SwapChain into Direct2DHwndContext.cpp 2025-04-24 13:58:24 +01:00
reuk
43c9f28d59 Direct2D: Move ScopedGeometryWithSink to Direct2DGraphicsContextImpl.cpp 2025-04-24 13:58:24 +01:00
reuk
137d9820b1 Direct2D: Move D2DHelpers to Direct2DGraphicsContext.cpp 2025-04-24 13:58:24 +01:00
reuk
2aed72d0d7 Direct2D: Move paintPrimitive implementation into Direct2DGraphicsContext 2025-04-24 13:58:24 +01:00
reuk
b061d5f5a4 Direct2D: Hide D2D SavedState in .cpp file 2025-04-24 13:58:24 +01:00
reuk
0071f4741c Direct2D: Make protected members of Pimpl private/public as appropriate 2025-04-24 13:58:24 +01:00
reuk
170b463400 Direct2D: Remove unused hwnd data member from D2DGraphicsContext::Pimpl 2025-04-24 13:58:24 +01:00
reuk
93d227b6af Direct2D: Split declaration and definition of Direct2DGraphicsContext::Pimpl 2025-04-24 13:58:24 +01:00
reuk
352f77083d DirectX: Remove unused ScopedMultithread 2025-04-24 13:58:24 +01:00
reuk
87abc7919b DirectX: Split out function definitions into a separate cpp file 2025-04-24 13:58:24 +01:00
Oli
ca3abbb96d Direct2D: Round virtual texture tile position
This fixes the issue reported here: https://forum.juce.com/t/regression-in-drawimage/65084/5
2025-04-24 13:58:24 +01:00
Oli
5d6cd1f2d7 Direct2DGraphicsContext: Fix rendering for rectangles smaller than 1x1
This should also fix https://forum.juce.com/t/bug-d2d-renderer-does-not-draw-purely-horizontal-vertical-paths/65686/3

Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:24 +01:00
Oli
1dce4ae0fe Direct2DGraphicsContext: Use path bounds to check for emptiness
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:24 +01:00
Oliver James
16326d13d3 Direct2D: Use the 'focused' window when acquiring metrics
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
Oli
9374f2c9f7 Graphics: Use preferred temporary image type for transparency layers
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
Oli
250abe9cf4 LowLevelGraphicsContext: Add preferred image type for temporary images
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
Oli
bf940ae42a Direct2D: Do image cloning on GPU when possible
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
Oli
ae784a941e Direct2D: Implement moveValidatedImageSection
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
reuk
c167c6dfde Direct2D: Move ImagePixelDataNativeExtensions into separate header 2025-04-24 13:58:23 +01:00
Oli
5e5258591f Direct2D: Move Direct2DGraphicsContext::Impl into separate header 2025-04-24 13:58:23 +01:00
reuk
6deb508e96 Direct2D: Move Direct2DFactories to juce_DirectX_windows.h 2025-04-24 13:58:23 +01:00
reuk
18b508343d Direct2D: Move Direct2DResources to juce_DirectX_windows.h 2025-04-24 13:58:23 +01:00
reuk
b5b7dd5696 Direct2D: Move Direct2DHelpers into juce_DirectX_windows.h 2025-04-24 13:58:23 +01:00
Oli
3b43b7ca13 Direct2D: Reduce DirectX resource thrashing in Direct2D Swapchain 2025-04-22 12:53:46 +01:00
attila
c786e6160c Direct2D: Fix fillAlphaChannelWithCurrentBrush when the source position is non-zero 2025-04-17 10:27:24 +02:00
reuk
eca83213eb
Direct2D: Fix issue where vertical/horizontal lines were ignored by strokePath 2025-04-02 10:57:09 +01:00
attila
5aab60f4e5 Direct2D: Fix text drawing using gradients 2025-03-28 12:19:11 +01:00
attila
273c7936d3 Direct2D: Fix text drawing using gradients when the screen scaling is 1 2025-03-17 15:32:59 +01:00
attila
1b595311d0 Move ShapedText to the detail namespace and expose it in the headers
This makes it accessible for the new TextEditor implementation in
juce_gui_basics.
2025-03-13 12:16:16 +01:00
reuk
92c7d73d2d
Direct2D: Fix image artefacts at the edge of alpha-clipped regions
This addresses the same issue that
95d416ab77 was intended to fix:

Drawing a drop shadow on a high-res display on Windows could sometimes
produce thin lines around the edge of the shadow. Using the 'clamp'
rather than the 'wrap' clipping mode seems to help.
2025-02-11 18:11:12 +00:00
reuk
09b10428ec
CoreGraphics: Remove CoreImage implementations for desaturation and transparency 2025-02-06 18:22:33 +00:00
reuk
c46bcb677e
CoreGraphics: Remove CoreImage single-channel blur implementation
The CoreImage blur implementation is often significantly slower than
the old software blur in common scenarios such as rendering shadows.
2025-02-06 18:22:33 +00:00
reuk
56ea531298
CoreGraphics: Fix bug where subsection images were rendered incorrectly 2025-02-03 13:56:31 +00:00
reuk
f12d29899c
Direct2D: Remove SetDpi call in startFrame
Previously, plugins and standalone apps could produce slightly different
visual results, particularly anti-aliasing, when displaying on a display
with native scaling applied. The discrepancy was caused by SetDpi being
called with a larger-than-default value (e.g. 192 DPI on a 200% scaled
display) in a standalone app, whereas SetDpi would always be called with
the default value of 96 in a plugin.

Keeping the default value seems to produce better results, so standalone
apps will now retain the default DPI.
2025-01-29 11:00:44 +00:00
reuk
c3e8b6bff3
CoreGraphics: Use Image NativeExtensions to avoid dynamic casts in graphics context 2025-01-23 12:21:33 +00:00
reuk
d3ca5961e7
Direct2D: Use Image NativeExtensions to avoid dynamic casts in graphics context 2025-01-23 12:21:33 +00:00
reuk
55e5e2082c
Image: Add new backup-extensions interface to support images with no main-memory backup 2025-01-23 12:21:33 +00:00
reuk
ada2c88b03
ImagePixelData: Update signatures of functions providing whole-image effects 2025-01-23 12:21:33 +00:00
reuk
5f7d6d70fc
Direct2DContext: Remove unnecessary public constants 2025-01-23 12:20:27 +00:00
Anthony Nicholls
7a1f397de6 Fonts (Linux): Return a null typeface when no default typefaces can be found 2024-12-18 16:00:44 +00:00