1. 22 Aug, 2021 1 commit
  2. 20 May, 2021 1 commit
  3. 13 Apr, 2021 1 commit
  4. 11 Mar, 2021 1 commit
  5. 23 Feb, 2021 1 commit
    • Christian Hergert's avatar
      gsk: add OpenGL based GskNglRenderer · 2a38cecd
      Christian Hergert authored
      The primary goal here was to cleanup the current GL renderer to make
      maintenance easier going forward. Furthermore, it tracks state to allow
      us to implement more advanced renderer features going forward.
      
      Reordering
      
      This renderer will reorder batches by render target to reduce the number
      of times render targets are changed.
      
      In the future, we could also reorder by program within the render target
      if we can determine that vertices do not overlap.
      
      Uniform Snapshots
      
      To allow for reordering of batches all uniforms need to be tracked for
      the programs. This allows us to create the full uniform state when the
      batch has been moved into a new position.
      
      Some care was taken as it can be performance sensitive.
      
      Attachment Snapshots
      
      Similar to uniform snapshots, we need to know all of the texture
      attachments so that we can rebind them when necessary.
      
      Render Jobs
      
      To help isolate the process of creating GL commands from the renderer
      abstraction a render job abstraction was added. This could be extended
      in the future if we decided to do tiling.
      
      Command Queue
      
      Render jobs create batches using the command queue. The command queue
      will snapshot uniform and attachment state so that it can reorder
      batches right before executing them.
      
      Currently, the only reordering done is to ensure that we only visit
      each render target once. We could extend this by tracking vertices,
      attachments, and others.
      
      This code currently uses an inline array helper to reduce overhead
      from GArray which was showing up on profiles. It could be changed to
      use GdkArray without too much work, but had roughly double the
      instructions. Cycle counts have not yet been determined.
      
      GLSL Programs
      
      This was simplified to use XMACROS so that we can just extend one file
      (gskglprograms.defs) instead of multiple places. The programs are added
      as fields in the driver for easy access.
      
      Driver
      
      The driver manages textures, render targets, access to atlases,
      programs, and more. There is one driver per display, by using the
      shared GL context.
      
      Some work could be done here to batch uploads so that we make fewer
      calls to upload when sending icon theme data to the GPU. We'd need
      to keep a copy of the atlas data for such purposes.
      2a38cecd
  6. 17 Nov, 2020 1 commit
  7. 03 Oct, 2020 1 commit
  8. 12 Sep, 2020 1 commit
    • Matthias Clasen's avatar
      Clean up lots of GTK+ -> GTK · 929a56e5
      Matthias Clasen authored
      Replace most remaining uses of GTK+ in the docs and
      user-visible strings by GTK. Also remove some leftover
      "Was added in 3.x" sentences from the docs.
      929a56e5
  9. 10 Feb, 2020 1 commit
  10. 14 May, 2019 1 commit
  11. 12 May, 2019 1 commit
    • Benjamin Otte's avatar
      testsuite: Stop using g_test_bug() · 6f6b07aa
      Benjamin Otte authored
      The calls used old bugzilla URLs and nobody cared about that.
      So apparently they are very unused.
      
      There's also a potential conflict between gitlab and bugzilla URLs and
      what base bug to use there.
      
      The old usages have been converted to comments.
      6f6b07aa
  12. 12 Apr, 2019 1 commit
    • Benjamin Otte's avatar
      testutils: Run in UTF8 locale · c78ba420
      Benjamin Otte authored
      before, code was using the "C" locale, but that one uses ASCII. Instead,
      run in the "C.utf8" locale.
      
      Nobody expects code to not support UTF8 and no end user runs their
      machine in an ASCII setup, so it makes no sense to default to that.
      c78ba420
  13. 16 Apr, 2018 1 commit
  14. 06 Feb, 2018 1 commit
    • Matthias Clasen's avatar
      The big versioning cleanup · 4c150d8e
      Matthias Clasen authored
      Remove all the old 2.x and 3.x version annotations.
      GTK+ 4 is a new start, and from the perspective of a
      GTK+ 4 developer all these APIs have been around since
      the beginning.
      4c150d8e
  15. 25 Nov, 2017 1 commit
  16. 03 May, 2017 2 commits
  17. 19 Jan, 2017 1 commit
  18. 08 Jan, 2017 2 commits
  19. 23 Oct, 2016 1 commit
  20. 16 Oct, 2016 1 commit
  21. 08 Jan, 2016 1 commit
    • Alberto Ruiz's avatar
      introspection: This patch fixes nullable return values fixes for the following symbols in gtk · 496f0892
      Alberto Ruiz authored
        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
      496f0892
  22. 12 Nov, 2015 1 commit
  23. 09 Nov, 2015 1 commit
  24. 04 Nov, 2015 1 commit
  25. 19 Feb, 2015 1 commit
  26. 26 Sep, 2014 1 commit
  27. 12 Jul, 2014 1 commit
  28. 07 Feb, 2014 3 commits
  29. 05 Feb, 2014 1 commit
  30. 04 Feb, 2014 1 commit
  31. 27 May, 2013 1 commit
  32. 17 May, 2013 1 commit
  33. 04 Mar, 2013 1 commit
  34. 27 Feb, 2012 1 commit
  35. 28 Nov, 2011 1 commit
  36. 02 Nov, 2011 1 commit