Commit Graph

21087 Commits

Author SHA1 Message Date
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 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
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
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
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 491550ffbc app: undeprecate about-dialog.c, and clean out a lot of cruft 2018-05-20 21:06:34 +02:00
Michael Natterer a072a5b789 app: get rid of gdk_keymap_get_default(), use get_for_display() instead 2018-05-20 21:06:34 +02:00
Michael Natterer 7d151002b0 app: fix button order in GimpColorDialog 2018-05-20 21:06:34 +02:00
Michael Natterer cb9651cf73 app: use the passed parent's toplevel in gimp_color_dialog_new() 2018-05-20 21:06:34 +02:00
Michael Natterer 389e86fff8 app: use GTK_ICON_SIZE_MENU for GimpColorEditor's page switching icons 2018-05-20 21:06:34 +02:00
Michael Natterer bdbec7941c Use the new macros from the last commit in all files
...and gone are the annoying warnings.
2018-05-20 21:06:34 +02:00
Michael Natterer dfb4d26611 Use gtk_show_uri_on_window(), gtk_show_uri() is deprecated 2018-05-20 21:06:34 +02:00
Michael Natterer 4e7eead7e3 app: set all GtkPaned widgets to have wide handles
the narrow handles' event areas did overlap with our own widgets close
to the handle.
2018-05-20 21:06:34 +02:00
Michael Natterer 407603326f app: follow preferences changes/improvements in GimpDeviceEditor 2018-05-20 21:06:34 +02:00
Michael Natterer 126c9347e6 app: behold unseen fancy shit in preferences 2018-05-20 21:06:34 +02:00
Michael Natterer cdb68d2351 app: undeprecate GimpLevelsTool
by using some semi-smart luminance magic to get a distinct color for
the alpha curve.
2018-05-20 21:06:34 +02:00
Michael Natterer 1d8696cd80 Get rid of gdk_flush() globally, use gdk_display_flush() 2018-05-20 21:06:34 +02:00
Michael Natterer f7f329b7e2 app: the goats are invading again, and are almost undeprecated 2018-05-20 21:06:34 +02:00
Michael Natterer b5d78ee98a app: fix themeing of GimpHistogramView and GimpCurveView
by simply getting rid of all earlier added style properties
and instead using the style of the "view" CSS class.
2018-05-20 21:06:33 +02:00
Ell 6e76cdf4d3 app: fix empty display unstable-version message 2018-05-20 21:06:33 +02:00
Michael Natterer 58aa0092b9 libgimpmodule: move all GimpModuleDB members to private 2018-05-20 21:06:33 +02:00
Michael Natterer bb2a9d119f libgimpconfig: move all GimpColorConfig members to private 2018-05-20 21:06:33 +02:00
Michael Natterer 8511eb6451 pdb: remove all compat procedures for the old lcms plug-in 2018-05-20 21:06:33 +02:00
Ell ed46a405ae app: fix canvas motion compression
In gimp_display_shell_canvas_tool_events(), use
gdk_window_set_event_compression(), instead of implementing our own
motion compression, which used to introduce all sorts of weird
effects when combined with extended input devices, that we had to
hackishly work around.

For tools that use GIMP_MOTION_MODE_EXACT, we call
gdk_window_set_event_compression() to disable motion compression
for the canvas window upon initializing the tool in response to a
GDK_BUTTON_PRESS event, and again to re-eanble compression upon the
corresponding GDK_BUTTON_RELEASE event.

This commit also merges
gimp_display_shell_canvas_tool_events_internal() back into
gimp_display_shell_canvas_tool_events().  The split was a detail
of our custom motion compression implementation.
2018-05-20 21:06:33 +02:00
Michael Natterer 73af1873a7 app: gdk_screen_get_monitor_workarea() -> gdk_monitor_get_workarea() 2018-05-20 21:06:33 +02:00
Michael Natterer 885f66158a app: kill all except one GtkAlignment, the tag popup one is a bit tricky 2018-05-20 21:06:33 +02:00
Michael Natterer c2763afd30 app: port gimp_display_shell_set_initial_scale() to the monitor's workarea 2018-05-20 21:06:33 +02:00
Michael Natterer 4a39edf241 app: disable motion compression, have to figure how to control GTK+'s 2018-05-20 21:06:33 +02:00
Michael Natterer 7f3f1afa28 app: port gimp_navigation_editor_popup() to GdkMonitor's workarea 2018-05-20 21:06:33 +02:00
Michael Natterer 369b273157 libgimpwidgets: move GimpEnumStore.enum_class to private 2018-05-20 21:06:33 +02:00
Simon Budig 9cb67fa992 app: kill the last GtkTables. 2018-05-20 21:06:33 +02:00
Simon Budig 8e900d1867 app/widgets: port the toolbox indicator area to GtkGrid 2018-05-20 21:06:33 +02:00
Simon Budig 9954030487 app/widgets: port the gimpstrokeeditor to GtkGrid 2018-05-20 21:06:33 +02:00
Simon Budig 5e475d67bd app/widgets: port gimpdashboard to GtkGrid 2018-05-20 21:06:33 +02:00
Ell 75b9fa0aea app: take window scale-factor into account when rendering image
In gimp_display_shell_draw_image(), enable the code that adjusts
the scale-factor used for rendering the image by the window scale
factor, so that we make full use of the screen resolution even on
HiDPI displays.  This also fixes artifacts along render-chunk
borders.
2018-05-20 21:06:33 +02:00
Simon Budig 4e8fbbe951 dialogs: fix two misbehaviours in the prefs dialog 2018-05-20 21:06:33 +02:00
Michael Natterer 534c02d590 app: fix GimpPrefsBox' page titles to look like selected rows again 2018-05-20 21:06:33 +02:00
Michael Natterer 18c4a288ee app: properly align frame children in GimpGridEditor 2018-05-20 21:06:33 +02:00
Michael Natterer affec75898 app: pack the content vbox expanding in GimpPrefsBox 2018-05-20 21:06:33 +02:00
Jehan 9fafb858bd app: do not run gtk_window_present() in about_dialog_create().
The window will be raised soon after anyway. No need to do it too early,
which makes setting a transient parent useless afterwards. In particular
we were still getting a "GtkDialog mapped without a transient parent"
message.
2018-05-20 21:06:33 +02:00
Jehan 7642715c17 app: allow setting parent for dialogs created by GimpDialogFactory.
Fixes a bunch of:
> Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
2018-05-20 21:06:33 +02:00
Simon Budig 4cac8373ff app/tools: fix the resize behaviour of the curves tool dialog. 2018-05-20 21:06:33 +02:00
Simon Budig 4bf50c23ea app/widgets: port GimpImagePropView to GtkGrid 2018-05-20 21:06:33 +02:00
Simon Budig 6452afb7e0 app/widgets: get rid of GtkTable in GimpTemplateEditor 2018-05-20 21:06:33 +02:00
Simon Budig 9d000f749f app/display: get rid of GtkTable 2018-05-20 21:06:33 +02:00
Simon Budig 2fb681f582 app/tools: get rid of GtkTable 2018-05-20 21:06:33 +02:00
Simon Budig a14723b9d8 dialogs: get rid of GtkTable 2018-05-20 21:06:33 +02:00
Simon Budig c14df1fd4e preferences-dialog: get rid of GtkTable 2018-05-20 21:06:33 +02:00
Michael Natterer 4cd19e6f65 app: undeprecate everything in propgui/, mostly table -> grid 2018-05-20 21:06:32 +02:00
Michael Natterer a6354632c7 app: fix splash text color 2018-05-20 21:06:32 +02:00
Michael Natterer d5c75afe2f app: honor the use-header-bar setting in GimpToolDialog 2018-05-20 21:06:32 +02:00
Michael Natterer 960b530d03 app: put back two lines that got lost in earlier GTK+ 3.0 porting 2018-05-20 21:06:32 +02:00
Michael Natterer 807e98b46c app: make spinscale much more bearable by fixing some coords 2018-05-20 21:06:32 +02:00
Simon Budig 0e819225d1 dialogs: some table->grid conversion in the item dialogs 2018-05-20 21:06:32 +02:00
Simon Budig 72e63887ba libgimpwidgets: convert GimpSizeEntry to a GtkGrid. 2018-05-20 21:06:32 +02:00
Timm Bäder 509813c1a9 spinscale: Decrease height 2018-05-20 21:06:32 +02:00
Michael Natterer 44b9bfe613 spinscale: remove our own border drawing 2018-05-20 21:06:32 +02:00
Timm Bäder fde2df5539 spinscale: Fix styling 2018-05-20 21:06:32 +02:00
Timm Bäder 1fda8e1963 fgbgvew: Pass correct state to GtkStyleContext api 2018-05-20 21:06:32 +02:00
Timm Bäder 1198a7e5af dockbook: chain up at end of size-allocate 2018-05-20 21:06:32 +02:00
Michael Natterer b2dd892eb4 app: set the right "use-header-bar" on all (?) dialogs 2018-05-20 21:06:32 +02:00
Michael Natterer 7549b6efe4 Bug 794132 - Make the plug-in protocol version part of the plug-in command line
Also clean GPConfig struct from deprecated members and bump the
plug-in protocol version number.
2018-05-20 21:06:30 +02:00
Michael Natterer 3571fc3ae2 app: port GimpCursorView to GtkGrid 2018-05-20 21:06:30 +02:00
Michael Natterer b9103bbc5f Revert "app: remove all deprecated threads_enter/leave code"
This reverts commit 94b028bc39c7250997ee9883793e6649bf2490c7.

Dunno what breaks here, it just crashes, leave the commits there
instead of rebasing them away, as reminder...
2018-05-20 21:06:30 +02:00
Michael Natterer 579cf4c428 app: remove all deprecated threads_enter/leave code 2018-05-20 21:06:30 +02:00
Michael Natterer ebe528aca8 app: port most menu items that want images to gimp_menu_item_set_image()
or remove the item setting completely.
2018-05-20 21:06:30 +02:00
Michael Natterer 0c05ec63f6 app: add utility functions gimp_widget_get,set_image()
as replacement for the deprecated GtkImageMenuItem, for the few cases
where we really want an icon/image in a menu item.
2018-05-20 21:06:30 +02:00
Michael Natterer 10e3a968c1 app: remove the unused GimpContainerGridView 2018-05-20 21:06:30 +02:00
Michael Natterer 65d4450b3e app, themes: move GimpDisplayShell styling to CSS
Looks half-decent again now.
2018-05-20 21:06:30 +02:00
Michael Natterer 03feaf39c3 app: port GimpDisplayShell to use GtkGrid 2018-05-20 21:06:30 +02:00
Michael Natterer 2f1a4fdc67 app: gimp_ui_manager_ui_popup_at_pointer() and use it where appropriate
Only one call to gimp_ui_manager_ui_popup() left...
2018-05-20 21:06:30 +02:00
Michael Natterer ab1edce8af app: use gimp_ui_menager_up_popup_at_widget() for the quick mask menu 2018-05-20 21:06:30 +02:00
Jehan 26710104ba Revert "Bug 794356 - Rulers always shown for subsequent image views"
This reverts commit ea48b9f31c.
Final revert of GTK+2 hack.
2018-05-20 21:06:30 +02:00
Jehan e7e7f00528 Revert "Bug 784480 - Clicking on-canvas GUI with a tablet stylus crashes..."
This reverts commit a8bc8d202c.
Continue removing the same GTK+2 hack.
2018-05-20 21:06:30 +02:00
Jehan 654ef12d58 Revert "Bug 794356 - Rulers always shown for subsequent image views"
This reverts commit 7230d5d777.
Remove GTK+2 only hack.
2018-05-20 21:06:30 +02:00
Michael Natterer b28228d911 app: add gimp_ui_manager_ui_popup_at_widget()
and use it where we used to pass gimp_button_menu_position() to
gimp_ui_manager_up_popup(), remove gimp_button_menu_position() because
it's now unused.
2018-05-20 21:06:30 +02:00
Michael Natterer 4c68fb70d4 app: use gtk_widget_get_preferred_size() in gimp_tool_gui_canvas_resized() 2018-05-20 21:06:30 +02:00
Jehan 588da0c8e8 app: remove #undef GDK_DISABLE_DEPRECATED
This was only needed for the insensitive menu item hack which has now be
removed to support CSS themes.
2018-05-20 21:06:30 +02:00
Michael Natterer 4a6388b265 app: use gtk_menu_popup_at_widget() in GimpIconPicker 2018-05-20 21:06:30 +02:00
Michael Natterer 6c8cf7876a Replace lots of deprecated gtk_menu_popup(), only GimpUIManager left 2018-05-20 21:06:30 +02:00
Michael Natterer 251d2f494e app: port some stuff to gdk_seat_grab/ungrab 2018-05-20 21:06:30 +02:00
Jehan 3dd5f19e65 app: the "Default" theme had been removed to "System" a long time ago.
Fix a "No such file or directory" error.
2018-05-20 21:06:30 +02:00
Jehan 23649d65be app: allow to select if we prefer a dark variant of the current theme.
GTK+ has the concept of theme variants, and in particular if we prefer
the dark variant of a theme. This can be chosen globally but also
per-application. Make this choice customizable in the Theme tab of
Preferences.
By default, the dark variant will be prefered.
2018-05-20 21:06:30 +02:00
Michael Natterer 4f0a87ffa6 app, libgimpwidgets, themes: fix some themeing
Add CSS names using gtk_widget_class_set_css_name(), remove styling in
code and instead do it properly in CSS, so far in the System theme.
All horribly incomplete but a start.
2018-05-20 21:06:30 +02:00
Michael Natterer be6d77b915 app: undeprecate GimpSpinScale, still looks like shit tho 2018-05-20 21:06:30 +02:00
Michael Natterer 0f725080c6 app: add missing const to gimp_cell_renderer_button_activate() 2018-05-20 21:06:30 +02:00
Tobias Ellinghaus c1e73b1cd4 Fix compile 2018-05-20 21:06:30 +02:00
Michael Natterer 241af754b9 app: get rid of some GtkTables in tools/ 2018-05-20 21:06:30 +02:00
Michael Natterer 4c5f0ff0de app: fix border width of GimpOverlayDialog 2018-05-20 21:06:30 +02:00
Michael Natterer 679ac0cb1e app: get rid of GtkArrow in GimpColorDialog 2018-05-20 21:06:30 +02:00
Michael Natterer f34b879a2d app: get rid of GtkHSeparator and GtkHScale 2018-05-20 21:06:30 +02:00
Michael Natterer 5ece7a8d1f Port a lot of stuff from GdkScreen/monitor_number to GdkMonitor
including some fixes for getting pointer coords, and needed
API changes in libgimpwidgets.
2018-05-20 21:06:30 +02:00
Michael Natterer 7bd6734a04 Get rid of all GtkAlignments, use GtkWidget align/margin instead 2018-05-20 21:06:30 +02:00
Michael Natterer 45d02a8e5f app: port GimpColorHistory to GtkGrid 2018-05-20 21:06:30 +02:00
Michael Natterer 901c3ddcf8 Get rid of the deprecated gtk_icon_size_lookup_for_settings()
and use gtk_icon_size_lookup() instead.
2018-05-20 21:06:30 +02:00
Michael Natterer 1b3135ca95 Get rid of using GtkMisc API globally 2018-05-20 21:06:30 +02:00
Michael Natterer f180a171cd pdb: remove all deprecated procedures 2018-05-20 21:06:29 +02:00
Michael Natterer 1671da428c libgimpbase: remove almost all deprecated compat cruft
Keep infrastructure for compat enums around because we will
mose definitely need it again.
2018-05-20 21:06:29 +02:00
Michael Natterer c50fb989c8 app: make GimpHighlightableButton build on GTK+ 3.x 2018-05-20 21:06:29 +02:00
Michael Natterer 30efaca5f9 app: port gimpwidgets-utils.c to GTK+ 3.x 2018-05-20 21:06:29 +02:00
Michael Natterer 717ba49c8c app: port GimpMeter to GTK+ 3.x 2018-05-20 21:06:29 +02:00
Michael Natterer a5b5eaebd3 libgimpwidgets, app: use GdkRGBA instead of GdkColor for cell backgrounds 2018-05-20 21:06:29 +02:00
Jehan 7b20173dc8 Bug 762279 - "Tip of the day" links opens two links.
Use the "activate-link" signal instead of "clicked" on tip links, so
that we can stop signal propagation.
Otherwise it opens "http://docs.gimp.org/" everytime.
2018-05-20 21:06:29 +02:00
Michael Natterer 52fe0dad60 Revert "Bug 762279 - "Tip of the day" links opens two links"
This reverts commit dc33afd95b.

That hack is not for gtk3...
2018-05-20 21:06:29 +02:00
Michael Natterer 895b544af2 app: port GimpContainerTreeView from style_set() to style_updated() 2018-05-20 21:06:29 +02:00
Michael Natterer 09e6313c14 app: use gimp_color_display_stack_get_filters() instead of stack->filters 2018-05-20 21:06:29 +02:00
Michael Natterer ab6f19438c app: remove GTK_OBJECT() case in GimpPopup 2018-05-20 21:06:29 +02:00
Michael Natterer 6b447c3643 app: port GimpCircle and subclasses to GTK+ 3 2018-05-20 21:06:29 +02:00
Jehan 5e9f450d24 Use GTK+3 gtk_get_locale_direction() function instead of current hack.
This new function is available from the released dev version 3.11.4. But
we don't want to require GTK+ master for the gtk3-port branch, so I
leave the old hack in a GTK_CHECK_VERSION() macro, to be removed later
when we update GTK+ required version.
2018-05-20 21:06:29 +02:00
Michael Natterer 922f55ab85 app: s/GtkObject/GtkAdjustment/ in gimpdisplayhsell-rotate-dialog.c 2018-05-20 21:06:29 +02:00
Michael Natterer 345ef9f0a9 app: port wilber drawing to GtkStyleContext 2018-05-20 21:06:29 +02:00
Michael Natterer b68e4a1401 app: don't use the deprecated GDK_EXTENSION_EVENTS_ALL 2018-05-20 21:06:29 +02:00
Michael Natterer 1fdc472c68 app: make the statusbar's progress label visible again
and remove setting of removed align properties. The label alignment is
broken now until that feature comes back to gtk+.
2018-05-20 21:06:29 +02:00
Michael Natterer cc010a4288 Incomplete notebook and tab theming commit, to be improved 2018-05-20 21:06:29 +02:00
Michael Natterer 820d6fbe95 app: don't use "size-request" for the toolbox' wilber, it's gone 2018-05-20 21:06:29 +02:00
Michael Natterer cf07fae3c6 app: implement GtkContainer::get_path_for_child() in GimpMessageBox
and handle our internal icon child ourselves.
2018-05-20 21:06:29 +02:00
Michael Natterer 8b8242947b app: GimpDock: port font size modification to GtkCssProvider 2018-05-20 21:06:29 +02:00
Michael Natterer 98dd27b776 app: port GimpTagPopup to GtkStyleContext
This doesn't look as it should at all, but is entirely useable and
undeprecated, and I really want to keep the diff to master small. Will
fix after we switch to GTK+ 3.0.
2018-05-20 21:06:29 +02:00
Michael Natterer 8bb1637013 app: port GimpNavigationEditor to GtkStyleContext 2018-05-20 21:06:29 +02:00
Michael Natterer bc7b35d2d6 app: port GimpHistogramView to gdk_device_grab()/ungrab() 2018-05-20 21:06:29 +02:00
Michael Natterer aa96d9629e app: port GimpGradientEditor to GtkSyleContext 2018-05-20 21:06:29 +02:00
Michael Natterer f8f42f0946 app: let the file dialog expand/collapse with the file type expander
Using the new gtk_expander_set_resize_toplevel().
2018-05-20 21:06:29 +02:00
Michael Natterer 3b00ba8f06 app: remove some forgotten #undef GSEAL_ENABLE 2018-05-20 21:06:29 +02:00
Michael Natterer e8f0c14491 app: use gdk_device_get_position() inetad of gdk_display_get_pointer() 2018-05-20 21:06:29 +02:00
Michael Natterer 76859c3c32 app: make input devices, grabs and therefore generally tools work again
- add new "device from event" apparatus that works on GTK+ 3.x
- fix the active device selection mechanism
- use the new device grabbing functions
- make sure we don't process events while we have a grab on
  another device
- compensate for some really obscure (and likely broken) behavior
  of XI2, it feels like we are the first real users...
2018-05-20 21:06:29 +02:00
Michael Natterer 97df7535a1 app: gimp_device_info_get_device_coords(): workaround for XI2 b0rk
for the time being, use gdk_window_get_device_position() instead of
gdk_device_get_axis() for X and Y, which gets rid of subpixel
coordinates, but at least returns values != 0. Also, don't ask
keyboard devices for coordinates.
2018-05-20 21:06:29 +02:00
Michael Natterer 09b9263d5c app: gimp_print_event(): add the device to the event debug output. 2018-05-20 21:06:29 +02:00
Michael Natterer 0c00a72b17 app: remove gimp_rgb_get,set_gdk_color()
and inline the few lines into their only users.
2018-05-20 21:06:29 +02:00
Michael Natterer 4b322b8326 app: use GdkRGBA instead of GdkColor in some places 2018-05-20 21:06:29 +02:00
Michael Natterer e522c1dbf6 app: port GimpComboTagEntry to GtkStyleContext 2018-05-20 21:06:29 +02:00
Michael Natterer 107fc72237 app: define all GimpHistogramView colors via style properties and CSS 2018-05-20 21:06:28 +02:00
Michael Natterer bbf2c3947b app: port GimpCurveView to GtkStyleContext
reusing the new grid-color property added in the parent class.
2018-05-20 21:06:28 +02:00
Michael Natterer a4b8dafe61 app: add style property and default CSS for GimpHistogramView's grid-color 2018-05-20 21:06:28 +02:00
Michael Natterer 88a96cf3fb app: add gimp_get_style_color() to simplify GdkRGBA style property lookup 2018-05-20 21:06:28 +02:00
Michael Natterer c4d721e06d app: port GimpCellRendererDashes to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 64d80e9aa4 Port cell renderers to gtk_cell_renderer_get_state() 2018-05-20 21:06:28 +02:00
Michael Natterer 9244cbe898 app: port GimpOverlayChild to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer f5c3bb00c2 app: remove call to gtk_widget_style_attach() from GimpOverlayBox 2018-05-20 21:06:28 +02:00
Michael Natterer 1cd367845d app: port GimpColorFrame away from GtkStyle, using a new style property 2018-05-20 21:06:28 +02:00
Michael Natterer dfa38fc26a app: remove obsolete device checks from GimpToolbox
The new code doesn't actually work properly, but the old one was
clearly bogus with GTK+ 3.x.
2018-05-20 21:06:28 +02:00
Michael Natterer 912128fe2e app: when checking for a device change, check the event's source device
because the events we receive always come from either master or
floating devices, but never from a slave source device.
2018-05-20 21:06:28 +02:00
Michael Natterer 9c9ba4895d app: always ask the master device for its axes or state 2018-05-20 21:06:28 +02:00
Michael Natterer 5d1ab3e5f9 app: port GimpTagEntry to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 74564dfef3 app: port GimpHistogramView to GtkStyleContext
Locally added shade() and mix() utility functions which use
GtkSymbolicColor. Will move them to a better place once they are
needed elsewhere.
2018-05-20 21:06:28 +02:00
Michael Natterer f3d65fdb59 Implement GtkWidget::style_updated() instead of ::style_set() 2018-05-20 21:06:28 +02:00
Michael Natterer dcb991c6c7 app: port GimpThumbBox to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer afaa31bb33 app: use gtk_widget_override_font() instead of modify_font() 2018-05-20 21:06:28 +02:00
Michael Natterer dada25b14e app: port GimpToolEditor to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 3b37a7a1c8 app: port GimpDockWindow to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 3374e32264 app: port GimpPaletteView to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 132485779e app: port GimpStrokeEditor to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 72ad56006b app: don't use style->black and style->white 2018-05-20 21:06:28 +02:00
Michael Natterer 86603f30b9 libgimpwidgets: move all GimpColorSelection members to a private struct 2018-05-20 21:06:28 +02:00
Michael Natterer 0e35af2723 libgimpwidgets: move all GimpColorNotebook members to a private struct. 2018-05-20 21:06:28 +02:00
Michael Natterer c32681f4c3 libgimpwidgets: move all GimpColorDisplayStack members to a private struct 2018-05-20 21:06:28 +02:00
Michael Natterer aedd3e43de app: port GimpScaleButton to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer da0e45db60 app: port GimpOverlayFrame to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 4a677c52fb app: port GimpOverlayBox to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 3b8bcb1e4d app: use gtk_menu_shell_get_selected_item() 2018-05-20 21:06:28 +02:00
Michael Natterer ce2cd374ee Replace gdk_cursor_unref() with g_object_unref() 2018-05-20 21:06:28 +02:00
Michael Natterer 8c975484ab app: check whether child widgets exist in GtkWidget::style_updated()
because it is emitted repeatedly during widget construction, when not
everything is in place yet.
2018-05-20 21:06:28 +02:00
Michael Natterer 19528a61fe app: copy gimp.css instead of gtkrc to the user's gimp directory
Also, don't migrate gtkrc files from older gimp versions.
2018-05-20 21:06:28 +02:00
Michael Natterer af1bb43f37 Port theme and gtkrc file loading to CSS files using GtkCssProvider 2018-05-20 21:06:28 +02:00
Michael Natterer e713ad4a43 app: implement GtkWidget::style_updated() instead of style_set() 2018-05-20 21:06:28 +02:00
Michael Natterer ad7fe94d86 app: use gdk_drag_context_get_selected_action() instead of conect->action 2018-05-20 21:06:28 +02:00
Michael Natterer cfbec6b311 app: use gdk_drag_context_get_source_window()
instead of peeking into the struct
2018-05-20 21:06:28 +02:00
Michael Natterer de225a74a2 app: port the about dialog to GtkStyleContext 2018-05-20 21:06:28 +02:00
Michael Natterer 1d304ea273 app: s/gtk_widget_modify_font/gtk_widget_override_font/ 2018-05-20 21:06:27 +02:00
Michael Natterer eb312ed55a app: remove calls to gtk_widget_get,set_extension_events() 2018-05-20 21:06:27 +02:00
Michael Natterer 084a01abfe app: port GimpDashEditor to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer 2c10a7c95a app: port GimpContainerBox to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer 72d90394f5 app: port gimp_get_icon_size() to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer f69ca15573 app: port GimpFgBgView to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer f21ad702a2 app: port GimpFgBgEditor to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer a142c8916c app: port GimpComponentEditor to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer 200dbf96ce app: port GimpColormapEditor to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer 1138846d4e app: port GimpContainerTreeView to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer ed1d57a882 app: port GimpContainerIconView to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer 5c6d52c5f3 app: port GimpPanedBox to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer 5b3e3023cd app: port setting the canvas padding color to GtkStyleContext 2018-05-20 21:06:27 +02:00
Michael Natterer 2200ca2371 app: port GimpBlobEditor to GtkStyleContext
Also, add prelighting for the handle.
2018-05-20 21:06:27 +02:00
Michael Natterer 9e7d1206ac app: change the list of available devices to something that makes sense
Include the client pointer, its slaves, and all floating devices.
2018-05-20 21:06:27 +02:00
Michael Natterer fc440cc4d0 app: port the device sort function to GdkDeviceManager
Also make sure we don't pass around uninitialized keyvals and
modifiers of device keys.
2018-05-20 21:06:27 +02:00
Michael Natterer 9c84e15484 app: put the toolbox' areas into a box until we decided about a wrapping widget 2018-05-20 21:06:27 +02:00
Michael Natterer de3bd90f9a app: introduce struct GimpDeviceKey because GdkDeviceKey is gone 2018-05-20 21:06:27 +02:00
Michael Natterer 0f90d95ab4 app: use GdkDevice accessors 2018-05-20 21:06:27 +02:00