summaryrefslogtreecommitdiff
path: root/gtk/gtktextview.c
Commit message (Collapse)AuthorAgeFilesLines
* API: Remove gtk_cairo_should_draw_window()Benjamin Otte2016-11-231-21/+16
| | | | The answer is: Yes.
* Complete the privatization of GtkTextAttributesMatthias Clasen2016-11-041-0/+1
| | | | | | | This was not quite complete, as gtktextattributes.h was still being included in public headers. https://bugzilla.gnome.org/show_bug.cgi?id=773903
* textview: Convert to no-window widgetBenjamin Otte2016-11-031-29/+82
|
* gtk: Call gtk_widget_set_has_window() on every widgetBenjamin Otte2016-11-021-0/+1
| | | | Even if we just set it to the value it already had.
* Use GdkRGBA for text attributesMatthias Clasen2016-11-011-11/+8
| | | | | | Now that GtkTextAttributes is private, we can clean this struct up a bit. The first step is to switch from GdkColor to GdkRGBA, and adapt all users.
* Make GtkTextAttributes privateMatthias Clasen2016-11-011-15/+0
| | | | | | | | This is a problematic struct, and giving direct access to it has kept us from making improvements to GtkTextView. Drop it from the public API, together with the auxiliary APIs. If it turns out that this functionality is needed, we should add individual getters.
* textview: Use gtk_widget_draw()Benjamin Otte2016-10-271-5/+19
|
* textview: Get rid of the pixel cacheBenjamin Otte2016-10-271-135/+7
|
* widget: Use ::measure vfunc to measure sizeTimm Bäder2016-10-221-25/+19
| | | | | | | | Add a new ::measure vfunc similar to GtkCssGadget's that widget implementations have to override instead of the old get_preferred_width, get_preferred_height, get_preferred_width_for_height, get_preferred_height_for_width and get_preferred_height_and_baseline_for_width.
* textview: Remove deprecated GtkScrollable APITimm Bäder2016-10-221-40/+0
|
* textview: Remove error-underline-color style propertyTimm Bäder2016-10-181-12/+0
|
* textview: Use gdk_window_new_child()Benjamin Otte2016-10-181-43/+17
|
* Add private header for GtkTextViewEmmanuele Bassi2016-10-171-1/+2
| | | | | This allows us to declare the symbols that are currently used inside gtktextdisplay.c without incurring in the wrath of the compiler.
* textview: Remove commented blockEmmanuele Bassi2016-10-171-10/+0
| | | | It's referencing gdk_cairo_create(), which does not exist any more.
* API: container: Remove gtk_container_set_border_width()Benjamin Otte2016-10-161-13/+4
|
* API: stylecontext: Remove state argument from gettersBenjamin Otte2016-10-161-7/+5
| | | | The argument must always be the current state.
* widget: Remove cursor-aspect-ratio style propertyTimm Bäder2016-10-161-7/+3
|
* API: Remove ability to set visuals on windowsBenjamin Otte2016-10-161-4/+2
| | | | | | | | And with it, gtk_widget_get_visual() and gtk_widget_set_visual() are gone. We now always use the RGBA visual (if available) and otherwise fall back to the system visual.
* Use NULL for generic marshallers in g_signal_new()Benjamin Otte2016-08-291-11/+11
| | | | | glib will use the correct marshaller automatically. And as a side effect, we also get all glib optimizations, like a va marshaller.
* Use gtk_popover_popdown/popup where appropriateTimm Bäder2016-08-161-2/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=769706
* port to new gtk_menu_popup_at_* () functionsWilliam Hua2016-07-191-105/+42
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=756579
* Fix up the documentation of GtkTextView::move-viewportMatthias Clasen2016-07-081-3/+3
| | | | Pointed out in https://bugzilla.gnome.org/show_bug.cgi?id=768546
* gtktextview: document how to get line spaceBastian Ilsø2016-05-231-1/+6
| | | | | | | | | adds a paragraph to gtk_text_view_get_pixels_below_lines(), describing how it can be used together with gtk_text_view_get_pixels_above_lines() to get the total amount of line spacing between two paragraphs. https://bugzilla.gnome.org/show_bug.cgi?id=747206
* gtk: Port to new monitor apiMatthias Clasen2016-04-271-14/+14
| | | | Use the GdkDisplay monitor api instead of the GdkScreen one.
* Fix a typoMatthias Clasen2016-03-111-1/+1
| | | | We don't want to get the padding twice.
* textview: Fix drag highlight problemsSebastien Lafargue2016-03-111-1/+9
|
* textview: Ensure the borders fit into the allocationTimm Bäder2016-03-091-1/+4
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=763216
* text view: Respect gtk-keynav-use-caretMatthias Clasen2016-03-041-20/+35
| | | | | When the gtk-keynav-use-caret setting is TRUE, make the cursor visible regardless of the cursor-visible property.
* gtk: Strip newlines from g_warning and g_errorMatthias Clasen2016-02-281-1/+1
| | | | g_logv adds one for us already.
* textview: Support borders in text nodeBenjamin Otte2016-02-271-1/+10
|
* textview: Fix coordinates when background drawing of text nodeBenjamin Otte2016-02-271-1/+1
| | | | Fixes black areas in source view of gtk-demo.
* pixelcache: Don't have a style context argumentBenjamin Otte2016-02-251-2/+9
| | | | | | | | That would imply the pixelcache monitors the style context for changes and it doesn't do that. Its only use case was opacity checks, so add gtk_pixel_cache_se_is_opaque() instead.
* textview: Draw the background properlyBenjamin Otte2016-02-251-7/+6
| | | | The background is *not* drawn relative to the clipping area.
* text view: Improve tag pointer trackingMatthias Clasen2016-02-101-23/+25
| | | | | | | | | A problem that has been observed in polari is that links in tags are clickable all the way into the margin. This problem is caused by gtk_text_view_get_iter_at_position ignoring the return value of pango_layout_xy_to_index. Instead, pass it back as a boolean return value. This is technically an API break, but we've allowed ourselves to change return types from void to gboolean before.
* text view: Don't leak cairo transformsMatthias Clasen2016-01-211-2/+1
| | | | | | | | | | The text view draw function was leaving its cairo context with a transformation after drawing to all the border windows, which lead mis-drawing in gitg. Avoid this by moving the gtk_cairo_transform_to_window call inside the existing cairo_save/restore calls. https://bugzilla.gnome.org/show_bug.cgi?id=760942
* text view: Expose cursor blink controlMatthias Clasen2016-01-181-0/+22
| | | | | | | | Derived classes like GtkSourceView with their own ::key-event handler need access to this, in order to make their keynav as nice as the builtin one, wrt to caret visibility. https://bugzilla.gnome.org/show_bug.cgi?id=760748
* text view: Update selection node visibilityMatthias Clasen2016-01-181-0/+5
| | | | Make the node invisible if we don't have a selection.
* text view: Expand CSS node docsMatthias Clasen2016-01-181-1/+8
| | | | Mention the selection node, and the context menu.
* introspection: This patch fixes nullable return values fixes for the ↵Alberto Ruiz2016-01-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* widget: Pass a GtkCssStyleChange instead of a bitmaskBenjamin Otte2015-12-131-7/+3
|
* cssnode: Change style-changed signalBenjamin Otte2015-12-121-16/+4
| | | | | | | | 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.
* Don't pass widget state flags to GtkStyleContext APITimm Bäder2015-11-221-1/+1
|
* Fix character entitiesPhillip Wood2015-11-191-1/+1
| | | | | | | | These are not supposed to be supported by gtk-doc¹ ¹https://bugzilla.gnome.org/show_bug.cgi?id=758137 https://bugzilla.gnome.org/show_bug.cgi?id=758175
* Cosmetic: Avoid explicit state variablesMatthias Clasen2015-11-141-4/+2
| | | | Using the state of the context makes this more obviously correct.
* text view: Improve text renderingMatthias Clasen2015-11-101-7/+14
| | | | | | | Use the text CSS node for rendering text, and the selection node for rendering selected text, avoid gtk_style_context_save, update states of all CSS nodes, and use the proper states when querying style properties.
* textview: Use a CSS node for selection renderingMatthias Clasen2015-11-101-3/+30
| | | | | | | Use a CSS node with name selection, like we do for entries and labels. Unlike those widgets, we currently don't user gtk_render_background, but just use the background color. That will require more effort.
* TextView: Use saner coordinate space in draw_layer.Alexander Larsson2015-11-101-0/+10
| | | | | | | | | | | | | | | | | | When I added the draw_layer vfunc it accidentally got passed a cairo_t that was configured with to draw in the viewport coordinate space (rather than the buffer coordinate space). This makes things unnecessary complex, because you have to convert between the two. The pixel cache is shared between the text and the layers, so there is no way to use draw_layer to get a stationary overlay effect. Thus it makes much more sense for the draw_layer vfunc to draw in the buffer space. Just changing this would break ABI for existing code, so this is fixed by adding new layer types and deprecating the old ones. Also, we use the new layer types to fix gtk3-widget-factory. https://bugzilla.gnome.org/show_bug.cgi?id=757856
* text view: Add diagram to CSS documentationMatthias Clasen2015-11-031-0/+9
|
* Use gtk_widget_set_focus_on_click() instead of deprecated settersFlorian Müllner2015-11-031-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=757269
* entry, textview: Use a dedicated style class for magnifierMatthias Clasen2015-11-021-1/+1
| | | | | This will free up "osd" as an application-level style class, and lets us style magnifiers differently.