1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00
Commit graph

15357 commits

Author SHA1 Message Date
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
093df763ba Direct2DHwndGraphicsContext: Always use default adapter
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
Oli
e177c5f8f4 Direct2DHwndGraphicsContext: Shorten lines longer than 100 characters 2025-04-24 13:58:24 +01:00
Oli
44d304b468 Direct2D: Use PostMessage for swapchain events
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
f75fb7f452 Windows: Use SoftwareImageType for Icon conversions
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
Oli
27946ba063 Effects: Use compatible image type for DragAndDropContainer
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
531d21e503 LookAndFeel: Use preferred temporary image type for progress bars
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
Oli
bd26d79b17 Effects: Use preferred temporary image type for DropShadow temporary image
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
Oli
4ba01a80a0 Component: Use Context appropriate ImageType for temporary images
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
Oli
2324e34e1b Graphics: Move Image::moveImageSection into ImagePixelData
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
Matt Gonzalez
e9a5531587 Direct2D: Disable software backup for component effect image
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
2f46d9eff4 Direct2D: Change juce_FunctionPointerDestructor.h include order 2025-04-24 13:58:23 +01:00
reuk
f9620d668d
WaveAudioFormatReader: Avoid potential FPE 2025-04-23 18:17:12 +01:00
attila
e574542db0 CapabilityInquiryDemo: Adapt UI layout to narrow screens 2025-04-23 18:12:10 +02:00
attila
6a53ddcb77 TextEditor: Restore JUCE 7 behaviour for the first line's alignment when line spacing > 1 2025-04-23 18:11:26 +02:00
attila
56b7b7621e TextEditor: Fix caret size in first and last position when line spacing is non-unity 2025-04-23 18:11:26 +02:00
attila
d2d5e9bdd2 TextEditor: Fix setLineSpacing
Applies the previously missed line spacing value of the TextEditor.

The changes in JustifiedText fix calculating the vertical position of
the first line for the case where ShapedTextOptions has the following
settings:

isBaselineAtZero() == false,
getHeight().has_value() == false
getLeading() > 1.0f

This case however is only triggered by the TextEditor, as with all
functions in GlyphArrangement at least one setting is different.
2025-04-23 18:11:26 +02:00
attila
e23969f3ce TextEditor: Fix drawing text in the wrong colour 2025-04-23 18:11:26 +02:00
Oli
3b43b7ca13 Direct2D: Reduce DirectX resource thrashing in Direct2D Swapchain 2025-04-22 12:53:46 +01:00
Oli
878ac1a23f DirectX: Reduce shared resource thrashing in VBlank 2025-04-17 14:23:32 +01:00
attila
c786e6160c Direct2D: Fix fillAlphaChannelWithCurrentBrush when the source position is non-zero 2025-04-17 10:27:24 +02:00
attila
087f915595 NSViewComponentPeer: Ignore mouseDragged messages during DnD operations
Prior to this change trying to drag and drop a file onto a target inside
a Viewport could cause hectic scrolling events.
2025-04-17 10:27:24 +02:00
attila
0943197e23 MacOS: Ensure that Bluetooth MIDI dialogue remains visible when we have always on top windows
This commit uses the same logic for the Bluetooth pairing window that we
use for JUCE dialogues and raises its level to NSFloatingWindowLevel
when there are always on top windows.
2025-04-16 18:08:29 +02:00
reuk
e05320998c CapabilityInquiryDemo: Fix build failures when using new C++ standards (20, 23) with old MSVC toolchains (2019 v142) 2025-04-15 11:11:21 +01:00
reuk
a8c85f5969
SafePointer: Add new equality operators to avoid ambiguous operator warnings with clang 14 2025-04-14 13:05:28 +01:00
reuk
17bf5c167c
ObjC: Silence Wcast-function-type-mismatch warnings when building with Wextra for x86_64 2025-04-14 13:05:22 +01:00
Oli
e6d6ba6984 CapabilityInquiryDemo: Fix potential C++23 comparison warning 2025-04-14 11:34:12 +01:00
reuk
392442906e
CIProfileHost: Fix shadowing warning 2025-04-10 17:28:17 +01:00
reuk
ad2315fdea
CapabilityInquiryDemo: Fix unused-variable warning 2025-04-10 17:28:17 +01:00
reuk
520be826c0
CapabilityInquiryDemo: Add getting-started advice 2025-04-10 17:28:17 +01:00
reuk
d08577e507
DemoRunner: Add CapabilityInquiryDemo 2025-04-10 17:28:17 +01:00