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

146 commits

Author SHA1 Message Date
reuk
3141c32a64
PopupMenu: Avoid const_cast in implementation 2021-09-28 11:31:48 +01:00
reuk
ab966fb499
PopupMenu: Add withMousePosition helper function to Options 2021-09-28 11:31:48 +01:00
reuk
84c5627b42
PopupMenu: Ensure that menu appears at the correct position on Windows with a hi res display in standalone apps 2021-09-28 11:31:48 +01:00
reuk
ea757cf1ea
PopupMenu: Only show menus within safe areas of the screen
This change stops menus from displaying under notches/cutouts on mobile
platforms.
2021-09-28 11:31:47 +01:00
ed
d6fd33b38d Accessibility: Disable accessibility for PopupMenu windows on the desktop when their parent window or target component have accessibility disabled 2021-09-15 14:04:23 +01:00
ed
90eb878d16 Accessibility: Make createAccessibilityHandler() private in Component subclasses 2021-09-07 11:23:17 +01:00
reuk
1ee106d730
PopupMenu: Avoid dismissing PopupMenus in bridged plugin editors
When bridging 32-bit/64-bit plugins on Windows, the plugin is hosted in
an auxilliary process, and the plugin's editor is embedded into an HWND
owned by a different process (the plugin host).

Previously, the `isForegroundProcess` check would fail for bridged
plugins, because the foreground window may belong to the DAW, rather
than to the auxilliary hosting process.

This patch adds an additional check, to find whether the same process
owns both the foreground window, and the window which embeds the
PopupMenu's target component. In this case, we avoid immediately
dismissing the PopupMenu.
2021-06-08 14:57:42 +01:00
reuk
0a4a67d439 PopupMenu: Use correct alignment for submenus with large borders 2021-05-24 19:40:47 +01:00
reuk
bcd7ae1fb5
PopupMenu: Avoid cropping menu items at the bottom of long menus with large borders 2021-05-24 18:48:39 +01:00
ed
b6bb2f4882 Accessibility: Improved PopupMenu focus handling when opening and added support for submenus 2021-05-20 18:24:57 +01:00
ed
ec990202b1 Accessibility: Added VoiceOver (macOS) and Narrator (Windows) accessibility screen reader support to juce_gui_basics 2021-05-10 10:53:14 +01:00
reuk
d62d3aaa4f
PopupMenu: Add option to specify initially-selected menu item 2021-03-10 16:14:42 +00:00
reuk
326d8deb16
PopupMenu: Tidy up Options implementation 2021-03-10 16:14:00 +00:00
ed
1b2f17f2e8 PopupMenu: Check currently focused component before passing keyboard focus on menu completion 2021-01-29 11:43:04 +00:00
reuk
99e2cd0e3f
PopupMenu: Dismiss popups when minimising parent window
This behaviour was already present on windows, so this patch updates
Linux and macOS window-handling to match.
2021-01-15 12:18:31 +00:00
ed
b7e28541ca Replaced deprecated Displays methods 2020-10-27 12:38:59 +00:00
reuk
f61447fd01 PopupMenu: Allow manual column breaking 2020-10-26 17:04:49 +00:00
reuk
d4450ad8ae PopupMenu: Add LookAndFeelMethods for drawing column separators 2020-10-26 17:04:49 +00:00
reuk
f04e11c4bb PopupMenu: Allow theming of popup menu background based on Options
Adds a new `drawPopupMenuBackgroundForOption` member function to
`PopupMenu::LookAndFeelMethods`. By default this will pass through
to `drawPopupMenuBackground`, but it can be overridden in cases
where the background appearance depends on the current `Options`.
2020-10-26 17:04:49 +00:00
ed
94d853b00d Fixed some issues when navigating PopupMenus with the keyboard 2020-07-10 19:05:26 +01:00
reuk
394c4fd475 Clang: Fix warnings when building with clang 10 2020-07-01 10:00:43 +01:00
ed
009d685179 Updated all license headers 2020-06-29 08:30:22 +01:00
ed
d510b73cdf Normalised all whitespace before args in std::function 2020-06-05 09:37:49 +01:00
Tom Poole
894e7d2bd2 Updated all license headers 2020-04-23 17:30:39 +01:00
reuk
327f817b9b Copyrights: Update commercial/gpl headers to be gpl-only 2020-04-09 15:22:56 +01:00
ed
441c88f3b9 macOS: Removed all dynamic_cast type_info warning workarounds which have been fixed in 0dd3b02 2020-03-30 12:57:28 +01:00
Tom Poole
f2e75a8f52 Fixed a popup submenu item selection bug on a right key press 2020-03-25 15:23:09 +00:00
ed
baebb9d1b5 Fixed a dangling pointer deletion when moving PopupMenu submenus 2020-02-20 12:42:52 +00:00
ed
c8c14516d5 Scale mouse position when calculating parent area for PopupMenu window 2020-01-23 09:41:26 +00:00
ed
c8bceee365 macOS: Fixed some spurious dynamic_cast warnings when loading dynamic libraries 2020-01-14 12:37:36 +00:00
ed
a54da0b832 Fixed some more typos 2020-01-07 08:53:23 +00:00
ed
e18f6da884 Added setImage() builder methods to PopupMenu::Item 2019-11-29 09:56:05 +00:00
reuk
635e070cba Added method PopupMenu::CustomComponent::getItem() to give them access to item details 2019-09-27 10:56:13 +01:00
ed
319efc59e0 Ensure that PopupMenu section headers aren't selectable 2019-08-27 14:30:50 +01:00
reuk
76f3aec386 PopupMenu: Pass unique_ptr rather than raw pointers to convey ownership semantics 2019-08-08 17:15:46 +01:00
Tom Poole
79d3e8b3f5 Windows: Removed some VS2013 workarounds 2019-07-11 15:28:41 +01:00
jules
69c3474012 Added method PopupMenu::Options::withDeletionCheck() to help avoid dangling pointers when triggering async menus 2019-06-24 16:37:48 +01:00
jules
cd4aba9e43 PopupMenu modernisation: Improved the PopupMenu::Item class to make it easy to build items by chaining calls together. 2019-06-20 13:55:18 +01:00
jules
0367d5c3a9 Added some PopupMenu::addItem overloads which let you attach a lambda callback to be invoked for a menu item. 2019-06-19 11:39:28 +01:00
jules
a97c4a9139 More std::unique_ptr modernisation - changed functions that used to return raw Drawable* pointers to use it 2019-05-16 15:37:47 +01:00
ed
a90940283c Fixed an issue where PopupMenus with a parent component were not being dismissed by dismissAllActiveMenus() 2019-05-13 09:23:05 +01:00
ed
2539f4d24f DRY-ed some code by adding a static Component::getApproximateScaleFactorForComponent() method 2019-04-29 12:55:39 +01:00
jules
cadac817c6 Enabled some more warning flags in Xcode, and fixed the problems they caused 2019-01-11 09:52:10 +00:00
hogliux
008b7a9ab2 Re-structured the low-level Android native code
Please see the forum post "Re-structuring of JUCE’s low-level Android code" and the BREAKING-CHANGES.txt for more information.
2018-11-13 12:33:40 +00:00
Tom Poole
38fd441a95 Fixed a bug setting PopupMenu parents via a LookAndFeel 2018-09-03 11:57:39 +01:00
Tom Poole
493591a7ef Cleaned up some doc comments 2018-08-29 10:56:56 +01:00
ed
b78e63aa02 Moved Displays class out of Desktop and into its own .h/.cpp and deprecated Displays::getDisplayContaining() 2018-08-10 16:37:52 +01:00
ed
82a0dceaa5 Set the parent component of a PopupMenu submenu in showSubMenuFor() 2018-08-10 10:16:11 +01:00
ed
511e01c400 Ensure that the target point in MenuWindow::getParentArea() is always in terms of screen coordinates 2018-07-16 16:15:36 +01:00
jules
1e6bbb8da9 Added some methods to allow ReferenceCountedObjectPtrs to be constructed or copied from references as well as pointers - as well as increasing safety, this actually makes things a bit more efficient as it skips a nullptr check. Updated lots of places in the code that could take advantage of this 2018-07-03 11:51:13 +01:00