summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2019-04-17 09:03:30 +0200
committerGitHub <noreply@github.com>2019-04-17 09:03:30 +0200
commit6697fd9a05859914fc320b4b4321fd9fb6170f71 (patch)
tree72abe2cadbeee0737f0ada1691abcf4cf1917357
parentcea49f00c380c404a45d9b002843969f164d382e (diff)
parente2e8457ca61dee58dc5edc47593fd628bacd1e57 (diff)
Merge pull request #27821 from mawenzy/pr_sliderfix
Fix slider handle being hard to select
-rw-r--r--scene/gui/slider.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/scene/gui/slider.cpp b/scene/gui/slider.cpp
index eb04b85931..028ca41cbf 100644
--- a/scene/gui/slider.cpp
+++ b/scene/gui/slider.cpp
@@ -34,8 +34,15 @@
Size2 Slider::get_minimum_size() const {
Ref<StyleBox> style = get_stylebox("slider");
- Size2i ms = style->get_minimum_size() + style->get_center_size();
- return ms;
+ Size2i ss = style->get_minimum_size() + style->get_center_size();
+
+ Ref<Texture> grabber = get_icon("grabber");
+ Size2i rs = grabber->get_size();
+
+ if (orientation == HORIZONTAL)
+ return Size2i(ss.width, MAX(ss.height, rs.height));
+ else
+ return Size2i(MAX(ss.width, rs.width), ss.height);
}
void Slider::_gui_input(Ref<InputEvent> p_event) {
@@ -134,7 +141,11 @@ void Slider::_gui_input(Ref<InputEvent> p_event) {
void Slider::_notification(int p_what) {
switch (p_what) {
+ case NOTIFICATION_THEME_CHANGED: {
+ minimum_size_changed();
+ update();
+ } break;
case NOTIFICATION_MOUSE_ENTER: {
mouse_inside = true;