Commit Graph

41339 Commits

Author SHA1 Message Date
Michael Natterer 9a4c9b6650 app: add "source", "vendor-id" and "product-id" to GimpDeviceInfo
and display them in GimpDeviceInfoEditor.
2018-05-20 21:06:35 +02:00
Michael Natterer 0b7aad66ed libgimpwidgets: left-align gimp_prop_enum_label_new()
just like gimp_prop_label_new().
2018-05-20 21:06:35 +02:00
Michael Natterer 89a4ea85ef app: port GimpDeviceManager and GimpDeviceInfo to GdkSeat
and also be smarter about what devices we enable by default: enable
all tablet devices and disable all things mouse, they can still be
enabled in the device dialog.
2018-05-20 21:06:35 +02:00
Jehan 24d0886f57 app: extended device concept does not seem to exist in GTK+3.
We were keeping around a flag telling us if coordinates are extended or
not. In GTK+2, a device indeed had to be enabled. In GTK+3, I can see
that device with extended inputs are enabled by default (they always
have pressure, etc.). This flag is made useless.
2018-05-20 21:06:35 +02:00
Michael Natterer 19caf4add8 app: undeprecate GimpDeviceStatus. don't use gtk_widget_set_state()
Use the same code as GimpPrefsBox to make the active device look like
a selected list item.
2018-05-20 21:06:35 +02:00
Jehan e0b3e893d2 app: GTK+3 has more GdkAxisUse values.
This fixes a crash when we were looping until GDK_AXIS_LAST, but our
existing code was expecting less values.

Also I note that GTK+3 has an additional GDK_AXIS_ROTATION since version
3.22, even though we were told that some pens with rotation support
would report rotation values with same valuator as for the wheel (at
least, the Wacom Art Pen would apparently use the same 6th valuator).
For proper support, it would be really worth testing such pens.
2018-05-20 21:06:35 +02:00
Michael Natterer f3f61379f7 app: remove the option to enable tearoff menus 2018-05-20 21:06:35 +02:00
Michael Natterer 0ea8b4e0e5 themes: some GimpDhsplayShell and children CSS hackery 2018-05-20 21:06:35 +02:00
Michael Natterer e76c1305a5 app: derive GimpStatusbar from GtkFrame not GtkStatusbar
we were not using a single GtkStatusBar features, it was only in the
way. Remove broken size allocation logic and simply set a minimum
height of 3em in CSS. Also ellipsize the label, long labels had funny
effects since changing the overall GimpDisplayShell packing to pure
GtkGrid.
2018-05-20 21:06:35 +02:00
Michael Natterer 7f6b58d6ce app: kill the mess of boxes in GimpDisplayShell, use a grid for everything 2018-05-20 21:06:35 +02:00
Michael Natterer 0c9ac3bca9 app: use a cairo recording surface to measure GimpCanvasPath's extents
This gets rid of using the deprecated gdk_cairo_create().
2018-05-20 21:06:35 +02:00
Michael Natterer 00c6047108 app: undeprecate gimp_highlight_widget_draw()
by stealing the few lines of code from gtk-inspector. Looks better, too :)
2018-05-20 21:06:35 +02:00
Jehan ab982c6401 app: plug-ins must now be installed as subdirectories.
This will in particular fix the whole DLL hell problem since various
plug-ins are now asked to install all their mess (and in particular
their embedded DLLs on Windows) inside their subfolder, hence not
disturbing the correct functionning of other plug-ins installed side by
side.
2018-05-20 21:06:35 +02:00
Jehan d89ad95cc7 plug-ins: make plug-ins inside common/ to also install in subfolders. 2018-05-20 21:06:35 +02:00
Jehan 870ca6334d plug-ins: install plug-ins in subfolder.
I am going to forbid plug-ins from being installed directly in the root
of the plug-ins/ directory. They will have to be installed in a
subdirectory named the same as the entry point binary.
This may seem useless for our core plug-ins which are nearly all
self-contained in single binaries, but this is actually a necessary
restriction to eliminate totally the DLL hell issue on Windows. Moving
core plug-ins in subfolders is only a necessary consequence for it.
2018-05-20 21:06:35 +02:00
Michael Natterer 4133a032de Undeprecate/improve GimpScaleComboBox and GimpUnitComboBox
Remove label-scale style properties and gtk_widget_modify_font()
hacks and theme them using CSS.
2018-05-20 21:06:35 +02:00
Michael Natterer 26ba39884c app: undeprecate stroke-dialog.c 2018-05-20 21:06:35 +02:00
Michael Natterer 587d511398 app: undeprecate GimpUIConfigurer, don't use gtk_window_parse_geometry() 2018-05-20 21:06:35 +02:00
Michael Natterer 628f654615 libgimp: remove some more cruft that is not used any longer 2018-05-20 21:06:35 +02:00
Simon Budig 7d64cf62c6 libgimpwidgets: rename the _grid()-Variants of gimp_scale_entry_*
Adjust all plugins to follow accordingly.

This concludes the GtkTable'ocide.
2018-05-20 21:06:35 +02:00
Simon Budig f01a978627 libgimpwidgets: kill the last remaining occurencces of GtkTable 2018-05-20 21:06:35 +02:00
Simon Budig 6d6d92d88e devel-docs: blindly port the tool to GtkGrid... 2018-05-20 21:06:35 +02:00
Simon Budig 25c033b263 some odds and ends regarding GtkTable removal... 2018-05-20 21:06:35 +02:00
Simon Budig 4e2b9eb89c color-selector-cmyk: kill GtkTable 2018-05-20 21:06:35 +02:00
Simon Budig 6f7a9ad212 jigsaw: kill GtkTable 2018-05-20 21:06:35 +02:00
Simon Budig c7f28c34b0 oilify: kill GtkTable 2018-05-20 21:06:35 +02:00
Simon Budig a109e1e9ae unit-editor: kill GtkTable 2018-05-20 21:06:35 +02:00
Simon Budig ae0d527b0c van-gogh-lic: kill GtkTable 2018-05-20 21:06:35 +02:00
Simon Budig b9aeb99055 sparkle: kill GtkTable 2018-05-20 21:06:35 +02:00
Simon Budig 483167217a file-gih: kill GtkTable 2018-05-20 21:06:34 +02:00
Simon Budig a076afc2fb file-raw-data: kill GtkTable 2018-05-20 21:06:34 +02:00
Simon Budig 95c44c4e09 file-xmc: kill GtkTable 2018-05-20 21:06:34 +02:00
Simon Budig 675b01479c file-pdf-load: kill GtkTable 2018-05-20 21:06:34 +02:00
Simon Budig 4558ce8a25 file-xbm: kill GtkTable 2018-05-20 21:06:34 +02:00
Simon Budig 720d0a7484 file-html-table: kill GtkTable 2018-05-20 21:06:34 +02:00
Simon Budig e1bed57ee7 depth-merge: kill GtkTable 2018-05-20 21:06:34 +02:00
Michael Natterer 71523b20cb app: add the help button the proper way in GimpFileDialog
Removes deprecated API usage and brings back the button.
2018-05-20 21:06:34 +02:00
Michael Natterer 1fcebb5a73 app: don't use gtk_widget_modify_text() in GimpContainerEntry
Instead, show an EEK wilber icon if an object with the entered name
doesn't exist.
2018-05-20 21:06:34 +02:00
Michael Natterer 465300f0ae app: undeprecate GimpDashEditor 2018-05-20 21:06:34 +02:00
Michael Natterer d7e7020a32 app: undeprecate GimpDessionInfo and fix remembering size and position
Don't mix GtkWindow/GdkWindow/GdkEventConfigure values, always use
GtkWindow API. This seems to fix everything, probably because it
properly takes client-side window decorations into account.
2018-05-20 21:06:34 +02:00
Michael Natterer 2dd2f1509b Enable and fix smooth scrolling and zooming
- Fix gimp_scroll_adjustment_values() for smooth scroll events
- Set GDK_SMOOTH_SCROLL_MASK on all widgets where we set GDK_SCROLL_MASK
- Add GIMP_ZOOM_SMOOTH to enum GimpZoomType
- Add "gdouble delta" to gimp_zoom_model_step()
- Change the meaning of the "scale" parameter to "scale or delta" in
  all functions that take GimpZoomType and a scale factor.
2018-05-20 21:06:34 +02:00
Michael Natterer e4d05a4758 app: use gimp_scroll_adjustment_values() in GimpNavigationEditor
and change signature of GimpNavigationView::scroll() to have
a GdkEventScroll instead of a GdkScrollDirection.
2018-05-20 21:06:34 +02:00
Michael Natterer fa3abc957b app: set GDK_SCROLL_MASK on widgets that need scroll events 2018-05-20 21:06:34 +02:00
Michael Natterer 613d02ca3a app: use gimp_scroll_adjustment_values() for scrolling the canvas 2018-05-20 21:06:34 +02:00
Michael Natterer 4a979995a3 libgimpwidgets: add gimp_scroll_adjustment_values()
and use it in GimpScrolledPreview. It supports smooth scrolling and
does roughly the same as a whole lot of magic code in GtkScrolledWindow
and GtkRange, resulting in the same scrolling behavior as in stock
GTK+ widgets.
2018-05-20 21:06:34 +02:00
Michael Natterer 97e19eb385 libgimpwidgets: set GDK_EVENT_SCROLL on GimpPreview's preview area 2018-05-20 21:06:34 +02:00
Michael Natterer b55e481459 libgimpwidgets: remove gimp_spin_button_new() 2018-05-20 21:06:34 +02:00
Michael Natterer b7f24cf3a2 plug-ins: copy gimp_spin_button_new() into the last two plug-ins using it 2018-05-20 21:06:34 +02:00
Michael Natterer 27ac4363b0 plug-ins: if GIMP_UNSTABLE, install test script-fu and pygimp scripts 2018-05-20 21:06:34 +02:00
Michael Natterer 046fcac2dd plug-ins: undeprecate script-fu-interface.c 2018-05-20 21:06:34 +02:00