Timm Bäder
7798764377
paned: Fix typo
2017-04-25 11:15:09 +01:00
Matthias Clasen
6181ff2552
paned: quietly handle missing cursors
...
The row-/col-resize cursors should really be present, but if they
aren't we don't need to crash.
https://bugzilla.gnome.org/show_bug.cgi?id=771963
2016-09-27 14:55:13 -04:00
Matthias Clasen
9a03fc906a
Fix gtk_paned_set_position to set position_set consistently
...
As pointed out in https://bugzilla.gnome.org/show_bug.cgi?id=765676 ,
we were failing to set position_set if the position did not change.
2016-05-02 07:42:06 -04:00
Matthias Clasen
bbd94b5a9f
gtk: Strip newlines from g_warning and g_error
...
g_logv adds one for us already.
2016-02-28 12:23:12 -05:00
Benjamin Otte
6edb420e51
paned: Fix drawing
...
Clip children to their window's size. That way no overdraw happens for
these widgets. But don't clip the handle.
We might in the future consider not clipping un-shrinkable children.
https://bugzilla.gnome.org/show_bug.cgi?id=762021
2016-02-14 16:10:07 +01:00
Benjamin Otte
88f0885638
paned: Use content allocation instead of widget allocation
...
We don't want to include padding and borders in our calculations
involving the handle.
2016-02-14 16:07:06 +01:00
Benjamin Otte
7e47418d0c
paned: rtl-flip with the correct rectangle
2016-02-14 15:52:35 +01:00
Matthias Clasen
102b3bfddf
paned: Draw handle before children
2016-02-12 18:10:02 -05:00
Matthias Clasen
48d7219296
paned: Don't overdraw
...
When moving children 'off', we can't allow them to draw outside
the paned allocation, so clip when drawing.
https://bugzilla.gnome.org/show_bug.cgi?id=761903
2016-02-12 15:02:34 -05:00
Matthias Clasen
43747a6b30
paned: Initialize max_position
...
As pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=608865
max_position should be set to G_MAXINT.
2016-01-24 00:22:31 -05:00
Matthias Clasen
fb77ebe17e
paned: Update node ordering according to text direction
...
This was overlooked in the initial node conversion.
2016-01-13 00:40:11 -05:00
Carlos Garnacho
e62f1604f9
paned: Use GtkGestureDrag for anything else than touch
...
The GtkGesturePan behavior of locking onto certain orientations may
come across as confusing, and is not strictly necessary for mice and
other pointing devices.
As GtkGesturePan is also a GtkGestureDrag, we just use the same
callbacks on both gestures.
https://bugzilla.gnome.org/show_bug.cgi?id=759670
2016-01-08 22:03:05 +01:00
Alberto Ruiz
496f0892fc
introspection: This patch fixes nullable return values fixes for the following symbols in gtk
...
gtk_accel_group_query
gtk_accel_group_from_accel_closure
gtk_accel_label_get_accel_widget
gtk_accessible_get_widget
gtk_actionable_get_action_name
gtk_app_chooser_get_app_info
gtk_app_chooser_button_get_heading
gtk_app_chooser_dialog_get_heading
gtk_application_get_window_by_id
gtk_assistant_get_nth_page
gtk_binding_set_find
gtk_builder_get_object
gtk_builder_lookup_callback_symbol
gtk_builder_get_application
gtk_button_get_image
gtk_cell_area_get_focus_from_sibling
gtk_cell_renderer_start_editing
gtk_cell_view_get_model
gtk_cell_view_get_displayed_row
gtk_clipboard_get_owner
gtk_container_get_focus_child
gtk_container_get_focus_vadjustment
gtk_container_get_focus_hadjustment
gtk_dialog_get_widget_for_response
gtk_drag_get_source_widget
gtk_drag_dest_get_target_list
gtk_drag_source_get_target_list
gtk_entry_completion_get_model
gtk_entry_completion_compute_prefix
gtk_expander_get_label_widget
gtk_file_chooser_get_filename
gtk_file_chooser_get_current_folder
gtk_file_chooser_get_uri
gtk_file_chooser_get_current_folder_uri
gtk_file_chooser_get_preview_widget
gtk_file_chooser_get_preview_file
gtk_file_chooser_get_preview_filename
gtk_file_chooser_get_preview_uri
gtk_file_chooser_get_extra_widget
gtk_file_chooser_get_filter
gtk_file_chooser_native_get_accept_label
gtk_file_chooser_native_get_cancel_label
gtk_file_filter_get_name
gtk_font_chooser_get_font_family
gtk_font_chooser_get_font_face
gtk_font_chooser_get_font
gtk_font_chooser_get_font_desc
gtk_font_chooser_get_font_map
gtk_frame_get_label
gtk_gesture_get_device
gtk_gesture_get_window
gtk_gl_area_get_error
gtk_header_bar_get_title
gtk_header_bar_get_subtitle
gtk_header_bar_get_custom_title
gtk_icon_info_get_filename
gtk_icon_view_get_path_at_pos
gtk_icon_view_get_model
gtk_image_get_pixbuf
gtk_image_get_animation
gtk_label_get_mnemonic_widget
gtk_label_get_attributes
gtk_check_version
gtk_menu_button_get_popup
gtk_menu_button_get_menu_model
gtk_menu_button_get_align_widget
gtk_menu_button_get_popover
gtk_menu_item_get_submenu
gtk_menu_item_get_accel_path
gtk_native_dialog_get_title
gtk_native_dialog_get_transient_for
gtk_notebook_get_nth_page
gtk_notebook_get_tab_label_text
gtk_notebook_get_menu_label
gtk_notebook_get_menu_label_text
gtk_notebook_get_group_name
gtk_notebook_get_action_widget
gtk_offscreen_window_get_surface
gtk_offscreen_window_get_pixbuf
gtk_paned_get_child1
gtk_paned_get_child2
gtk_places_sidebar_get_location
gtk_places_sidebar_get_nth_bookmark
gtk_plug_get_socket_window
gtk_popover_get_default_widget
gtk_progress_bar_get_text
gtk_recent_filter_get_name
gtk_recent_manager_lookup_item
gtk_settings_get_default
gtk_socket_get_plug_window
gtk_stack_sidebar_get_stack
gtk_stack_switcher_get_stack
gtk_style_context_get_section
gtk_style_context_get_parent
gtk_style_context_get_frame_clock
gtk_test_find_widget
gtk_text_buffer_get_mark
gtk_text_tag_table_lookup
gtk_text_view_get_tabs
gtk_text_view_toggle_cursor_visible
gtk_text_view_get_window
gtk_toolbar_get_nth_item
gtk_tool_button_get_label
gtk_tool_button_get_icon_name
gtk_tool_button_get_label_widget
gtk_tool_button_get_icon_widget
gtk_tool_palette_get_drop_item
gtk_tool_palette_get_drop_group
gtk_tree_model_filter_convert_child_path_to_path
gtk_tree_model_filter_convert_path_to_child_path
gtk_tree_model_sort_convert_child_path_to_path
gtk_tree_model_sort_convert_path_to_child_path
gtk_tree_view_get_column
gtk_tree_view_get_bin_window
gtk_tree_view_column_get_widget
gtk_tree_view_column_get_tree_view
gtk_widget_get_frame_clock
gtk_window_group_get_current_device_grab
GtkTextBufferSerializeFunc
2016-01-08 12:18:23 +00:00
Matthias Clasen
2f544655f9
Revise CSS node documentation
...
Clarify the use of brackets in the CSS node diagrams:
[] means optional nodes or classes, <> means child widgets.
2015-12-16 10:58:47 -05:00
Matthias Clasen
5db1dad869
paned: Initialize clip properly
...
This was causing problems in the case when only one of the paned
children is visible - we would use uninitialized memory, leading
to invalide clip regions. Concretely, the signal tab in the inspector
would sometimes not render at all.
2015-12-15 23:56:47 -05:00
Matthias Clasen
152326bd24
paned: Allocate the handle input area properly
...
Drop the margin misuse and use the border allocation of the
handle gadget. We use negative margins to make the border allocation
larger without pushing the paned children out.
2015-12-15 21:59:04 -05:00
Matthias Clasen
5aec427c1a
paned: Fix size allocation
...
We were passing negative widths to height-for-width calls that
didn't expect this.
2015-12-15 21:58:45 -05:00
Matthias Clasen
44baf19330
paned: Add a deprecation note
2015-12-15 08:41:16 -05:00
Matthias Clasen
c2fc1cff32
paned: Convert to gadgets
2015-12-15 08:41:16 -05:00
Benjamin Otte
971a277419
cssnode: Change style-changed signal
...
Instead of having old and new style, now have a GtkCssStyleChange opaque
object that will compute the changes you are interested in for you.
This simplifies change signal handlers quite a bit and avoids lots of
repeated computation in every signal handler.
2015-12-12 02:16:04 +01:00
Timm Bäder
2182fe7d9d
Don't pass widget state flags to GtkStyleContext API
2015-11-22 17:11:35 +01:00
Matthias Clasen
cca5cac965
paned: Move .wide to CSS subnode
...
This fits better with our general use of style classes.
2015-11-04 12:05:03 -05:00
Matthias Clasen
c389511b86
paned: Add diagrams to CSS documentation
2015-11-03 14:27:35 -05:00
Matthias Clasen
0f2ce2bb1c
paned: Convert to CSS nodes
...
Add a subnode for the separator, and use it for drawing.
2015-10-30 15:53:28 -04:00
Timm Bäder
944ef8bb0b
GtkPaned: Fix gtk_paned_set_child_visible calls
...
Use CHILD1/CHILD2 instead of 0 and 1, always use the same order and
don't check for child NULL-ness, because it will be done in
gtk_paned_set_child_visible anyways.
2015-10-16 15:07:53 +02:00
Alexander Larsson
d5f1754981
gtk: Stop setting GDK_EXPOSURE_MASK on random widgets
...
These days exposure happens only on the native windows (generally the
toplevel window) and is propagated down recursively. The expose event
is only useful for backwards compat, and in fact, for double buffered
widgets we totally ignore the event (and non-double buffering breaks
on wayland).
So, by not setting the mask we avoid emitting these events and then
later ignoring them.
We still keep it on eventbox, fixed and layout as these are used
in weird ways that want backwards compat.
2015-09-14 11:01:13 +02:00
Matthias Clasen
5c2759af3c
Use standard cursor names
...
This changes GTK+ to use gdk_cursor_new_from_name() with the
'standard' css names, instead of GdkCursorType.
https://bugzilla.gnome.org/show_bug.cgi?id=652085
2015-07-26 01:45:06 -04:00
Cosimo Cecchi
b4ee73a291
paned: don't call gtk_style_context_set_background()
2015-07-01 16:09:23 -07:00
Matthias Clasen
9bb121c55d
paned: Fix compiler warnings
...
Fix warnings due to -Wdeclaration-after-statement and -Wshadow.
2015-06-02 09:08:15 -04:00
Ignacio Casal Quinteiro
4a7da1e143
Do not return on void functions
2015-02-19 14:46:32 +01:00
Matthias Clasen
cf0c9eb158
GtkPaned: Add a "wide-handle" property
...
This can be used by applications to indicate that a paned is expected
to be actively used by the users for configuring the UI, and needs
a prominent handle.
https://bugzilla.gnome.org/show_bug.cgi?id=738860
2014-10-20 08:50:53 -04:00
Matthias Clasen
9b4001ed00
GtkPaned: Set orientable style classes initially
...
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:38:56 -04:00
Matthias Clasen
e7b3d8b414
GtkPaned: Make sure the raise the handle window above children
...
We need to show child windows and handle in the right order,
otherwise the input-only handle window ends up under the children
where it is useless.
2014-06-11 09:33:30 -04:00
Matthias Clasen
22cc9749c9
GtkPaned: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:06 -04:00
Carlos Garnacho
d05a9f9a7b
gesture: Replace gtk_gesture_attach/detach with event controller API
...
Event controllers now auto-attach, and the GtkCapturePhase only determines
when are events dispatched, but all controllers are managed by the widget wrt
grabs.
All callers have been updated.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
ad6606e8af
gtk: Update callers of GtkGesturePan orientation
2014-05-27 17:47:12 +02:00
Carlos Garnacho
5fdf07547f
paned: Handle pointer events from touchscreen devices
...
GtkPaned may just capture pointer events because the child widget
doesn't happen to have GDK_TOUCH_MASK set, resort to checking the
device in that case.
2014-05-23 19:54:33 +02:00
Carlos Garnacho
681164564e
paned: Use GtkGesture to handle handle dragging
...
Dragging is all handled by a GtkGesturePan now, matching the
paned orientation.
On touch events, a wider area is listened for, so touch events
don't need to be as accurate to initiate dragging, if no dragging
is truly initiated in this case, events are just forwarded for
child widgets to handle.
2014-05-23 19:54:32 +02:00
Victor Martinez
75f90ee424
Allow defining an invisible resize area for GtkPaned's handle.
...
This should allow theme developers to use a very small width for
the resize handle, but still let users easily move the handle by
defining a wider resize area.
The additional resize area follows the "margin" style property.
https://bugzilla.gnome.org/show_bug.cgi?id=728073
2014-04-22 19:38:26 -04:00
William Jon McCann
469d333aa2
docs: use Returns: consistently
...
Instead of Return value:
2014-02-19 18:56:05 -05:00
William Jon McCann
326da2da58
docs: don't use <anchor>
2014-02-07 15:40:52 -05:00
William Jon McCann
7a208fbbf3
docs: use proper apostrophe
...
https://wiki.gnome.org/Design/OS/Typography
2014-02-07 13:06:10 -05:00
William Jon McCann
0ce016650b
docs: Use markup for links
2014-02-07 09:42:12 -05:00
William Jon McCann
a22358c0c0
docs: use ` instead of <literal>
2014-02-04 18:24:29 -05:00
William Jon McCann
63e887e165
docs: replace all <examples> with markdown headings
2014-02-04 16:58:54 -05:00
William Jon McCann
4c8bd8e7cf
docs: Identify examples that are C code
...
https://bugzilla.gnome.org/show_bug.cgi?id=723119
2014-01-29 12:45:49 -05:00
William Jon McCann
768bc44081
docs: use |[ ]| instead of <programlisting></programlisting>
...
https://bugzilla.gnome.org/show_bug.cgi?id=723119
2014-01-29 12:45:49 -05:00
Alban Browaeys
6ea4c1a1f4
paned: minus the size by the handle for the for_child1 computation.
...
Fixes:
(rhythmbox:22802): Gtk-CRITICAL **:
_gtk_widget_get_preferred_size_for_size: assertion 'size >= -1' failed
that is gtk_paned_get_preferred_size_for_opposite_orientation calls
_gtk_widget_get_preferred_size_for_size on child2 with a negative
size.
As gtkpaned size was (32), child1 minimum size was (55) then
for_child1 became (32) for an handle_size of (5). Thus for_child2
ended up as (-5).
https://bugzilla.gnome.org/show_bug.cgi?id=705624
2013-08-14 00:10:08 -04:00
Emmanuele Bassi
0899ef7cc9
gtk: Use new macros for defining private data
...
https://bugzilla.gnome.org/show_bug.cgi?id=702996
2013-07-09 09:30:02 +01:00
Alexander Larsson
bb7054b508
overlay/paned: Ensure we set the right visual on windows
...
This was always "needed", but the problems with not doing it
now are worse, since any CSD window will have a nonstandard
rgba visual.
2013-05-08 15:51:00 +02:00