summaryrefslogtreecommitdiff
path: root/libs/gtkmm2ext
AgeCommit message (Collapse)Author
2017-02-20Allow to pre-seed Tabbable detached state.Robin Gareus
2017-02-12Update Japanese translationHiroki Inagaki
2017-02-06Tweak output formatting of save_all_bindings_as_htmlBen Loftis
2017-02-01Properly remember window position.Robin Gareus
Querying the position of unmapped windows may or may not return a valid position. -- the configure handler is also called after hiding a window.
2017-01-22Update Japanese translationHiroki Inagaki
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-15Add Japanese translationHiroki Inagaki
2017-01-12add API to query name of bound actionRobin Gareus
2017-01-08NO-OP: whitespaceRobin Gareus
2017-01-08Fix Pane size allocation:Robin Gareus
* Skip calling allocate on recently hidden children. * Don't [temporarily] call size_allocate with negative sizes
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-05French translation updateOlivier Humbert
2017-01-05French translation updateOlivier Humbert
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-13changes to adapt to modified version of GTK/Quartz which uses only MOD2 for ↵Paul Davis
Command, everywhere. The default version of GTK2/Quartz uses MOD2+META for keys and MOD2 for scroll, which is basically insane
2016-12-11Revert "Pixel hunt cairo-packer (status-bar, selection-clock border)"Robin Gareus
This reverts commit 6015481377bc7c96d7e09b263a18b285fe2fc282.
2016-12-11Pixel hunt cairo-packer (status-bar, selection-clock border)Robin Gareus
2016-12-10CairoPacker draws outside of its widget allocationRobin Gareus
This fixes fixes TimeInfoBox packing when the InfoBox position changes.
2016-12-10Tweak transport iconsRobin Gareus
2016-11-30French translation updateOlivier Humbert
2016-10-26Fix restoration of key bindings assigned to Windows+key, bug #7037Tim Mayberry
Windows key generates Mod4+Super (at least with the version of Gdk we use on linux) so for bindings using the Windows key to work, GDK_SUPER_MASK has to be added to modifier mask.
2016-10-12map::clear() calls erase. Cleans up cpp check warning 'iterator used after ↵Nathan Stewart
element has been erased'
2016-09-29manually revert b9cab93fb116b and remove associated code.Paul Davis
For the last time, because of how GDK works, Keyboard::PrimaryModifier on MacOS MUST include MOD2 ***AND** META
2016-09-29enhance -D bindings outputPaul Davis
2016-08-30Update our MSVC project files to generate the most recent Ardour session ↵John Emmas
file format (ver 5) rather than the older v3 format
2016-08-19fix optimized build compilationRobin Gareus
2016-08-19For MSVC, 'using namespace whatever' doesn't help us to differentiate ↵John Emmas
between ambiguous type names so... given that 'Rectangle' is a type name that's commonly found in several different namespaces, we'll need to specify explicitly which one we want.
2016-08-19fix failure to remove keyvalue from Keyboard::state on key releasePaul Davis
2016-08-17Fix anchored popups with separators in themJulien "_FrnchFrgg_" RIVAUD
The code computing the position of the popup menu used to compare the given string to each MenuItem::get_label() result, but that method actually replaces the content (child) of the MenuItem if that child is not already a Gtk::Label. In particular, this breaks menu separators. Avoid the issue by checking by hand if the only child of the MenuItem is a Label, and directly compare the label text.
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-09remove debug outputPaul Davis
2016-08-08fix definition of PrimaryModifier for Keyboard for OS XPaul Davis
2016-08-08fix display of modifiers on OS X in the bindings editorPaul Davis
2016-08-08Move anchored menu placement strategy to Gtkmm2ext utilsJulien "_FrnchFrgg_" RIVAUD
So that it can be used by others.
2016-08-06update german translationEdgar Aichinger
2016-08-04workaround changes in glibmm 2.49.xNils Philippsen
Glib::RefPtr defines the operator bool() as explicit which breaks comparisons like "some_ref_ptr == 0" or "... != 0". https://bugzilla.gnome.org/show_bug.cgi?id=769502
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-20minor safety fix for the PanePaul Davis
2016-07-20Gtkmm2ext::Pane: attempt to track child lifetime, since Gtkmm 2.4 doesn't do ↵Paul Davis
this correctly
2016-07-18fix a compile of annoying compiler warnings with elcap clangPaul Davis
2016-07-18before pushing keybindings to GTK for menu display, make sure that we add ↵Paul Davis
back the META modifer that GTK expects
2016-07-18move show_gdk_event_state() utility function from gtk2_ardour to libs/gtkmm2extPaul Davis
2016-07-18fix incorrect restoration of pane positions on Apple.Paul Davis
Code to check if we were to close to an edge (for window resizing) blocked all divider setting, because it would be called with a current widget allocation of 1x1
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-07-14regenerate and manually fix all PO files so that ./waf i18n doesn't generate ↵Paul Davis
unnecessary errors
2016-06-30use initialization, not explicit assignmentPaul Davis