guix-play/gnu/packages/patches/synfigstudio-fix-ui-with-gtk3.patch
Ricardo Wurmus 2ac2b17251
gnu: synfigstudio: Fix UI bug.
* gnu/packages/patches/synfigstudio-fix-ui-with-gtk3.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch.
* gnu/packages/animation.scm (synfigstudio)[source]: Apply patch.
2017-05-28 15:59:52 +02:00

56 lines
1.9 KiB
Diff

Downloaded from
https://github.com/synfig/synfig/commit/b9c3b73ee35b83c4d9183c800809040cef98b2f2.patch
Without this patch the UI of Synfig Studio (when built with the latest version
of GTK) displays very large buttons in the header of every frame.
This patch can be removed with the next release.
From b9c3b73ee35b83c4d9183c800809040cef98b2f2 Mon Sep 17 00:00:00 2001
From: caryoscelus <caryoscelus@gmx.com>
Date: Wed, 25 Jan 2017 18:34:39 +0300
Subject: [PATCH] Fix dock drop area size
Fixes #227
By using Frame instead of Button we avoid intrusive Gtk themes
from forcing huge drop area size.
---
synfig-studio/src/gui/docks/dockdroparea.cpp | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/src/gui/docks/dockdroparea.cpp b/synfig-studio/src/gui/docks/dockdroparea.cpp
index 0f8936fdb..e012282f0 100644
--- a/src/gui/docks/dockdroparea.cpp
+++ b/src/gui/docks/dockdroparea.cpp
@@ -35,7 +35,7 @@
#include "app.h"
#include "docks/dockdroparea.h"
#include "docks/dockmanager.h"
-#include <gtkmm/button.h>
+#include <gtkmm/frame.h>
#endif
@@ -61,10 +61,15 @@ DockDropArea::DockDropArea(Gtk::Widget *target):
std::vector<Gtk::TargetEntry> listTargets;
listTargets.push_back( Gtk::TargetEntry("SYNFIG_DOCK") );
- Gtk::Button *button_left = manage(new Gtk::Button());
- Gtk::Button *button_right = manage(new Gtk::Button());
- Gtk::Button *button_top = manage(new Gtk::Button());
- Gtk::Button *button_bottom = manage(new Gtk::Button());
+ Gtk::Frame *button_left = manage(new Gtk::Frame());
+ Gtk::Frame *button_right = manage(new Gtk::Frame());
+ Gtk::Frame *button_top = manage(new Gtk::Frame());
+ Gtk::Frame *button_bottom = manage(new Gtk::Frame());
+
+ button_left->set_size_request(20, 10);
+ button_right->set_size_request(20, 10);
+ button_top->set_size_request(20, 10);
+ button_bottom->set_size_request(20, 10);
button_left->drag_dest_set(listTargets);
button_right->drag_dest_set(listTargets);