c33f94f686
Enforce minimum pane sizes
...
* 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)
2017-01-02 17:13:56 +01:00
de04da27ee
Fix crash when unpacking or deleting pane
...
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-21 17:10:37 +01:00
377b357afb
Add Zoom/Expand icon
2016-12-20 18:48:10 +01:00
004431426d
Towards packing CairoWidgets on ArdourCanvas.
2016-12-19 13:36:42 +01:00
545f5bee87
changes to adapt to modified version of GTK/Quartz which uses only MOD2 for Command, everywhere.
...
The default version of GTK2/Quartz uses MOD2+META for keys and MOD2 for scroll, which is
basically insane
2016-12-13 07:02:08 -05:00
cdbf49b873
Revert "Pixel hunt cairo-packer (status-bar, selection-clock border)"
...
This reverts commit 6015481377
.
2016-12-11 02:19:10 +01:00
6015481377
Pixel hunt cairo-packer (status-bar, selection-clock border)
2016-12-11 01:32:27 +01:00
642b357376
CairoPacker draws outside of its widget allocation
...
This fixes fixes TimeInfoBox packing when the InfoBox position changes.
2016-12-10 21:30:33 +01:00
1468e270de
Tweak transport icons
2016-12-10 15:56:47 +01:00
Olivier Humbert
059bbbf23f
French translation update
2016-11-30 20:31:32 +01:00
8d70b76059
Fix restoration of key bindings assigned to Windows+key, bug #7037
...
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-26 12:03:17 +10:00
Nathan Stewart
ca98c7a051
map::clear() calls erase. Cleans up cpp check warning 'iterator used after element has been erased'
2016-10-12 14:50:02 -04:00
99c8e51918
manually revert b9cab93fb1
and remove associated code.
...
For the last time, because of how GDK works, Keyboard::PrimaryModifier on MacOS MUST include MOD2 ***AND** META
2016-09-29 12:01:50 -04:00
5472498a50
enhance -D bindings output
2016-09-29 12:01:49 -04:00
0ff233d234
Update our MSVC project files to generate the most recent Ardour session file format (ver 5) rather than the older v3 format
2016-08-30 07:15:00 +01:00
a83febb268
fix optimized build compilation
2016-08-19 22:38:10 +02:00
4ece16f348
For MSVC, 'using namespace whatever' doesn't help us to differentiate 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-19 14:11:00 +01:00
45cd3482a2
fix failure to remove keyvalue from Keyboard::state on key release
2016-08-19 08:32:44 -04:00
08df4e1920
Fix anchored popups with separators in them
...
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-17 01:45:47 +02:00
6a985df81e
Replace positioning function with popup helper
...
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-17 01:45:47 +02:00
nick_m
c62026b567
Ensure RelevantModifierKeyMask is updated on each modifier change.
...
- fixes bug where changing prefs in User Interaction
only took effect on restart.
2016-08-14 03:04:54 +10:00
e9752ff93e
remove debug output
2016-08-09 21:26:27 -04:00
b9cab93fb1
fix definition of PrimaryModifier for Keyboard for OS X
2016-08-08 17:59:11 -04:00
3d400f97dd
fix display of modifiers on OS X in the bindings editor
2016-08-08 17:47:11 -04:00
a51cd8689f
Move anchored menu placement strategy to Gtkmm2ext utils
...
So that it can be used by others.
2016-08-08 16:44:40 +02:00
Edgar Aichinger
595684ddf7
update german translation
2016-08-06 16:49:41 +02:00
Nils Philippsen
65c2e089ab
workaround changes in glibmm 2.49.x
...
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-08-04 09:52:22 +02:00
3953879d4d
add a timeout to flush_pending()
...
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-25 14:13:52 +02:00
81211a91b1
minor safety fix for the Pane
2016-07-20 10:48:07 -04:00
82d3afb851
Gtkmm2ext::Pane: attempt to track child lifetime, since Gtkmm 2.4 doesn't do this correctly
2016-07-20 10:48:07 -04:00
727613b4b7
fix a compile of annoying compiler warnings with elcap clang
2016-07-18 14:42:34 -04:00
9f3a9ef02d
before pushing keybindings to GTK for menu display, make sure that we add back the META modifer that GTK expects
2016-07-18 14:42:13 -04:00
1a55e83e98
move show_gdk_event_state() utility function from gtk2_ardour to libs/gtkmm2ext
2016-07-18 14:41:25 -04:00
b8f5306d5b
fix incorrect restoration of pane positions on Apple.
...
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-18 12:49:36 -04:00
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
81a10a26e0
regenerate and manually fix all PO files so that ./waf i18n doesn't generate unnecessary errors
2016-07-14 06:19:19 -04:00
5335763f98
use initialization, not explicit assignment
2016-06-30 17:41:11 -04:00
37156d6761
more tweaks to HTML output when printing key bindings
2016-06-23 08:37:24 -04:00
791cff6f46
use new keyboard modifier names, and replace GDK names with better versions
2016-06-21 08:59:39 -04:00
ae4e84fd51
provide some Keyboard:: methods to get access to other versions of modifier names
2016-06-21 08:58:38 -04:00
10a4de1550
some modest improvements in the html rendering of key bindings, plus use of normal modifier names
2016-06-20 17:19:31 -04:00
0eb509ac2e
remove debug output from Pane code
2016-06-14 11:46:24 -04:00
9142d1edf5
working version of pane position mgmt for OS X
2016-06-13 09:52:54 -04:00
ceb0bce971
write some code to limit pane handle positions on OS X.
...
So far untested, and uncompiled
2016-06-13 09:10:47 -04:00
8d17465016
give WindowProxy its own map/unmap signals so that other things can track map/unmap without accessing the Window
2016-06-12 22:49:15 -04:00
9a1c24dda7
fix thinko in Pane expose event handler.
...
There are always less dividers than children
2016-06-08 12:26:24 -04:00
83770f839b
minor optimization when search for actions
2016-06-07 19:25:11 -04:00
73f3abedea
make it possible to disable VisibilityTracker's use of WM visibility
2016-06-07 18:29:03 -04:00
9a50d15c7f
fix crashing bug in Pane when accessing dividers
2016-06-06 16:05:43 -04:00
5700296cb6
add a destructor for Gtkmm2ext::Pane that unparents the children.
...
This seems to be required, although there is confusion in Gtkmm3 about this.
2016-06-06 16:05:25 -04:00