summaryrefslogtreecommitdiff
path: root/libs/gtkmm2ext/gtkmm2ext
AgeCommit message (Collapse)Author
2017-08-09Separate set_toggleaction_state () APIRobin Gareus
Prepare for a method consistent with access_action(): * separate group + action names * no action string parsing overhead. * no fatal, abort () call for invalid actions
2017-07-17add required stdint.hPaul Davis
2017-07-17Clean up library inheritance (colors.h, utils.h)Robin Gareus
make libwidget independent of libcanvas. Confine basics to pbd and gtkmm2ext.
2017-07-17Remove <gtkmm.h> include from header files.Robin Gareus
2017-07-17Move more Gtkmm2ext widgets into libwidgetRobin Gareus
2017-07-17Remove unused sources & includesRobin Gareus
2017-07-17Move Gtkmm2ext widgets into libwidgetRobin Gareus
2017-07-04Allow DnDVbox to sort the selection, using original orderRobin Gareus
In preparation for Processors to be copy/pasted in the same order as they appear on the strip -- not order in which they are selected.
2017-07-02Add binding-proxy to ClickBoxRobin Gareus
2017-07-02Add control-focus notifications from bindable widgets.Robin Gareus
2017-06-29Add a convenience MenuHelper c'torRobin Gareus
This is pretty much Gtkmm's * CheckMenuElem::CheckMenuElem * MenuElem::MenuElem except MenuItems are created with bool mnemonic = false;
2017-05-05remove cruft (unused UI::ui_scale)Robin Gareus
2017-03-21The new class 'Gtkmm2ext::EventBoxExt' needs to be exportable when building ↵John Emmas
with MSVC (previously the c'tor was private and nothing was getting exported anyway)
2017-03-21Fix gcc4 buildsRobin Gareus
2017-03-20Towards a consistent render() API.Robin Gareus
This fixes an -Woverloaded-virtual ambiguity introduced in b5e613d45 void render (cairo_t*, cairo_rectagle*) void render (Cairo::RefPtr<Cairo::Context> const&, cairo_rectangle_t*) ArdourCanvas prefers cairomm and CairoWidget itself uses Cairo::Context, this improves overall API consistency.
2017-03-20Forward un/map events to NSGLViewRobin Gareus
2017-03-20NSGLView: default to hidden, add API to un/hideRobin Gareus
2017-03-20Add a EventBox wrapper to forward unmap events.Robin Gareus
2017-03-20Allow CairoWidget to be backed by NSGLViewRobin Gareus
2017-03-20Move NSGlView into libgtkmm2extRobin Gareus
This allows to re-use the concept with CairoWidget
2017-03-13Clean up existing bindings on resetRobin Gareus
2017-03-11NO-OP whitespaceRobin Gareus
2017-03-11Remove old modal get_color API.Robin Gareus
2017-02-20Allow to pre-seed Tabbable detached state.Robin Gareus
2017-02-06Tweak output formatting of save_all_bindings_as_htmlBen Loftis
2017-01-20Yet another pane pain: allow deleting children using forall_vfuncRobin Gareus
We not only need to make sure the iterator remains valid, but also the object pointed to. Valgrind trace: Invalid read of size 8 Gtkmm2ext::Pane::forall_vfunc(int, void (*)(_GtkWidget*, void*), void*) (pane.cc:617) Gtk::Container_Class::forall_vfunc_callback(_GtkContainer*, int, void (*)(_GtkWidget*, void*), void*) gtk_container_destroy (gtkcontainer.c:1073) g_closure_invoke (gclosure.c:804) ... g_object_run_dispose (gobject.c:1084)
2017-01-12add API to query name of bound actionRobin Gareus
2017-01-08Fix crash when changing Pane widgets -- #7198Robin Gareus
Gtkmm2Ext::Pane::on_add() uses a pointer to a std::vector<> element in the destroy notify callback. If the vector is modified, that pointer becomes invalid. Add 2 widgets "A", "B". remove "B", add another one "C". Now if A is destroyed, notify_child_destroyed(PTR) points to invalid memory and not to "A".
2017-01-02Enforce minimum pane sizesRobin Gareus
* enforce minimum size of child widgets * honor manually set child-minsize in size-requests * ignore hidden children (eg. VCA) * clamp divider position (instead of just ignoring out-of-bounds moves)
2016-12-21Fix crash when unpacking or deleting paneRobin Gareus
Gtk::Widget_Class::dispose_vfunc_callback calls hide() which invokes Pane::handle_child_visibility which calls Pane::reallocate which tries to get the allocation of the widget being destroyed.
2016-12-20Add Zoom/Expand iconRobin Gareus
2016-12-19Towards packing CairoWidgets on ArdourCanvas.Robin Gareus
2016-12-10CairoPacker draws outside of its widget allocationRobin Gareus
This fixes fixes TimeInfoBox packing when the InfoBox position changes.
2016-08-17Replace positioning function with popup helperJulien "_FrnchFrgg_" RIVAUD
Because all uses of the function positioning menus anchored to a widget were as callback argument to Gtk::Menu::popup() where the caller needed to correctly bind arguments, this led to repeated and a bit obscure code. Wrap the logic into an helper function that takes care of all that, and update the callers.
2016-08-14Ensure RelevantModifierKeyMask is updated on each modifier change.nick_m
- fixes bug where changing prefs in User Interaction only took effect on restart.
2016-08-08Move anchored menu placement strategy to Gtkmm2ext utilsJulien "_FrnchFrgg_" RIVAUD
So that it can be used by others.
2016-07-25add a timeout to flush_pending()Robin Gareus
In some circumstances UI::flush_pending never returns, and all UI interactive ends up being driven by while (gtk_events_pending()) { gtk_main_iteration(); } This has various implications depending on the caller and usually results in a crash at session-close or exit.
2016-07-20Gtkmm2ext::Pane: attempt to track child lifetime, since Gtkmm 2.4 doesn't do ↵Paul Davis
this correctly
2016-07-18move show_gdk_event_state() utility function from gtk2_ardour to libs/gtkmm2extPaul Davis
2016-06-23more tweaks to HTML output when printing key bindingsPaul Davis
2016-06-21use new keyboard modifier names, and replace GDK names with better versionsPaul Davis
2016-06-21provide some Keyboard:: methods to get access to other versions of modifier ↵Paul Davis
names
2016-06-20some modest improvements in the html rendering of key bindings, plus use of ↵Paul Davis
normal modifier names
2016-06-13working version of pane position mgmt for OS XPaul Davis
2016-06-12give WindowProxy its own map/unmap signals so that other things can track ↵Paul Davis
map/unmap without accessing the Window
2016-06-07make it possible to disable VisibilityTracker's use of WM visibilityPaul Davis
2016-06-06add a destructor for Gtkmm2ext::Pane that unparents the children.Paul Davis
This seems to be required, although there is confusion in Gtkmm3 about this.
2016-05-31fix pane behaviour when children are hidden/shownPaul Davis
2016-05-31more sensible API for Pane::set_child_minsizePaul Davis
2016-05-31provide a mechanism to avoid allocating too small of a space to a Pane childPaul Davis
Gtk::Notebook throws an assertion if allocated too small a space during drawing (at least with Clearlooks)