summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJabiertxof <jabier.arraiza@marker.es>2019-02-13 21:11:55 +0000
committerJabier Arraiza <jabier.arraiza@marker.es>2019-02-18 21:18:27 +0000
commitbc7a5b483b3442aebc9558d3e4640413485901c1 (patch)
tree30ea6beeab3b2651d4b68ea8c66612125cf79971 /src
parentAdd descriptions (diff)
downloadinkscape-bc7a5b483b3442aebc9558d3e4640413485901c1.tar.gz
inkscape-bc7a5b483b3442aebc9558d3e4640413485901c1.zip
Improving window position
Diffstat (limited to 'src')
-rw-r--r--src/live_effects/effect.cpp2
-rw-r--r--src/ui/dialog/livepatheffect-add.cpp29
-rw-r--r--src/ui/dialog/livepatheffect-add.h2
3 files changed, 31 insertions, 2 deletions
diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp
index 935b02826..613eef9e6 100644
--- a/src/live_effects/effect.cpp
+++ b/src/live_effects/effect.cpp
@@ -614,7 +614,7 @@ const EnumEffectData<EffectType> LPETypeData[] = {
, N_("Offset") //label
, "offset" //key
, "offset" //icon
- , N_("Offset a ittem also with line joins cusp") //description
+ , N_("Offset a item also with line joins cusp") //description
, true //on_path
, true //on_shape
, true //on_group
diff --git a/src/ui/dialog/livepatheffect-add.cpp b/src/ui/dialog/livepatheffect-add.cpp
index 84090c2e8..cc4375f37 100644
--- a/src/ui/dialog/livepatheffect-add.cpp
+++ b/src/ui/dialog/livepatheffect-add.cpp
@@ -92,6 +92,7 @@ LivePathEffectAdd::LivePathEffectAdd()
_builder->get_widget("LPEExperimentals", _LPEExperimentals);
_builder->get_widget("LPEScrolled", _LPEScrolled);
_builder->get_widget("LPESelectorEffectEventFavShow", _LPESelectorEffectEventFavShow);
+ _builder->get_widget("LPESelectorEffectInfoEventBox", _LPESelectorEffectInfoEventBox);
_LPEFilter->signal_search_changed().connect(sigc::mem_fun(*this, &LivePathEffectAdd::on_search));
_LPESelectorFlowBox->signal_child_activated().connect(sigc::mem_fun(*this, &LivePathEffectAdd::on_activate));
_LPEDialogSelector->add_events(Gdk::POINTER_MOTION_MASK | Gdk::BUTTON_PRESS_MASK | Gdk::BUTTON_RELEASE_MASK | Gdk::ENTER_NOTIFY_MASK | Gdk::LEAVE_NOTIFY_MASK );
@@ -139,7 +140,6 @@ LivePathEffectAdd::LivePathEffectAdd()
LPESelectorButtonBox->signal_leave_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(LPESelectorEffect->gobj())));
LPESelectorEffect->signal_enter_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseover), GTK_WIDGET(LPESelectorEffect->gobj())));
LPESelectorEffect->signal_leave_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(LPESelectorEffect->gobj())));
-
_LPESelectorFlowBox->insert(*LPESelectorEffect, i);
}
_visiblelpe = _LPESelectorFlowBox->get_children().size();
@@ -147,10 +147,25 @@ LivePathEffectAdd::LivePathEffectAdd()
_LPESelectorEffectEventFavShow->signal_enter_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseover), GTK_WIDGET(_LPESelectorEffectEventFavShow->gobj())));
_LPESelectorEffectEventFavShow->signal_leave_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(_LPESelectorEffectEventFavShow->gobj())));
_LPESelectorEffectEventFavShow->signal_button_press_event().connect(sigc::mem_fun(*this, &LivePathEffectAdd::show_fav_toggler));
+ _LPESelectorEffectInfoEventBox->signal_button_press_event().connect(sigc::mem_fun(*this, &LivePathEffectAdd::hide_pop_description));
+ _LPESelectorEffectInfoEventBox->signal_enter_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseover), GTK_WIDGET(_LPESelectorEffectInfoEventBox->gobj())));
+ _LPESelectorEffectInfoEventBox->signal_leave_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(_LPESelectorEffectInfoEventBox->gobj())));
_LPESelectorFlowBox->set_sort_func(sigc::mem_fun(*this, &LivePathEffectAdd::on_sort));
_LPESelectorFlowBox->set_filter_func(sigc::mem_fun(*this, &LivePathEffectAdd::on_filter));
_LPEExperimentals->property_active().signal_changed().connect(sigc::mem_fun(*this, &LivePathEffectAdd::reload_effect_list));
_LPEDialogSelector->show_all_children();
+ int width;
+ int height;
+ int original_width;
+ int original_height;
+ _LPEDialogSelector->get_default_size (original_width, original_height);
+ _LPEDialogSelector->get_size (width, height);
+ if( width == original_width && height == original_height ){
+ Gtk::Window *window = SP_ACTIVE_DESKTOP->getToplevel();
+ window->get_size (width, height);
+ _LPEDialogSelector->resize(std::min(width - 300, 1800), height - 300);
+ reload_effect_list();
+ }
}
void LivePathEffectAdd::on_activate(Gtk::FlowBoxChild *child)
@@ -208,6 +223,12 @@ bool LivePathEffectAdd::pop_description(GdkEventButton* evt, Glib::RefPtr<Gtk::B
return true;
}
+bool LivePathEffectAdd::hide_pop_description(GdkEventButton* evt)
+{
+ _LPESelectorEffectInfoPop->hide();
+ return true;
+}
+
bool LivePathEffectAdd::fav_toggler(GdkEventButton* evt, Glib::RefPtr<Gtk::Builder> builder_effect)
{
Gtk::EventBox *LPESelectorEffect;
@@ -320,6 +341,12 @@ void LivePathEffectAdd::reload_effect_list()
_LPEInfo->set_visible(false);
_LPEInfo->get_style_context()->remove_class("lpeinfowarn");
}
+ if (!_showfavs &&
+ _LPEFilter->get_text().empty() &&
+ _LPEDialogSelector->get_allocated_height() - 200 > _LPESelectorFlowBox->get_allocated_height())
+ {
+ _LPEDialogSelector->resize(_LPEDialogSelector->get_allocated_width(), _LPESelectorFlowBox->get_allocated_height() + 200);
+ }
}
void LivePathEffectAdd::on_search()
diff --git a/src/ui/dialog/livepatheffect-add.h b/src/ui/dialog/livepatheffect-add.h
index 709cf2996..af411715d 100644
--- a/src/ui/dialog/livepatheffect-add.h
+++ b/src/ui/dialog/livepatheffect-add.h
@@ -62,6 +62,7 @@ public:
void on_search();
void on_activate(Gtk::FlowBoxChild *child);
bool pop_description(GdkEventButton* evt, Glib::RefPtr<Gtk::Builder> builder_effect);
+ bool hide_pop_description(GdkEventButton* evt);
bool fav_toggler(GdkEventButton* evt, Glib::RefPtr<Gtk::Builder> builder_effect);
bool show_fav_toggler(GdkEventButton* evt);
bool mouseover(GdkEventCrossing* evt, GtkWidget *wdg);
@@ -88,6 +89,7 @@ private:
Gtk::FlowBox *_LPESelectorFlowBox;
Gtk::Popover *_LPESelectorEffectInfoPop;
Gtk::EventBox *_LPESelectorEffectEventFavShow;
+ Gtk::EventBox *_LPESelectorEffectInfoEventBox;
Gtk::Switch * _LPEExperimentals;
Gtk::SearchEntry *_LPEFilter;
Gtk::ScrolledWindow *_LPEScrolled;