1. 10 Jan, 2020 1 commit
    • Mario Sanchez Prada's avatar
      application: Complete startup notification sequence for remote invocations · c17c18e4
      Mario Sanchez Prada authored and Alberts Muktupāvels's avatar Alberts Muktupāvels committed
      When a remote instance of a GTK application implementing the Startup
      Notification protocol gets spawned it will pass the startup sequence
      ID as "platform data" to the main instance. Thus, we need to make sure
      that the startup sequence gets completed in that case, since the remote
      instance won't do it by itself, since it won't map any top level window.
      
      Checking for this "platform data" in the implementation of the after_emit()
      virtual method in the primary instance should be a good place to do so, since
      the existence of such data proves that a remote instance has been spawned.
      
      #1084
      c17c18e4
  2. 07 Jun, 2019 1 commit
    • Christian Hergert's avatar
      gdk: backport GdkProfiler · ef67eb0b
      Christian Hergert authored
      This is a backport of the GdkProfiler from master. It does not include
      the pixel bandwidth numbers that come from gdkdrawcontext.c since there
      does not seem to be an analog in 3.x.
      
      Additionally, this implements the recent changes for SYsprof's D-Bus
      profiler API which adds a Capabilities property and an options hash-table
      to the D-Bus interface for forward portability.
      ef67eb0b
  3. 31 May, 2019 1 commit
    • Christian Hergert's avatar
      gtk: rely on default marshallers · 0f2b019d
      Christian Hergert authored
      Similar to previous removals of g_cclosure_marshal_VOID__VOID we can remove
      other marshallers for which are a simple G_TYPE_NONE with single parameter.
      In those cases, GLib will setup both a c_marshaller and va_marshaller for
      us. Before this commit, we would not get a va_marshaller because the
      c_marshaller is set.
      
      Related to Initiatives#10
      0f2b019d
  4. 02 Apr, 2019 1 commit
    • Jan Alexander Steffens's avatar
      Centralize DESKTOP_STARTUP/AUTOSTART_ID handling · 2d3936cb
      Jan Alexander Steffens authored
      Add private API to GDK to move these variables from the environment into
      static scope. Also move the DESKTOP_STARTUP_ID validation here to reduce
      code duplication.
      
      Use constructors to read them as early as possible; however, do not
      unset them until first requested. This avoids breaking gnome-shell and
      gnome-settings-daemon, which want to use the DESKTOP_AUTOSTART_ID in
      their own gnome-session clients.
      
      Fixes #1761
      2d3936cb
  5. 29 Mar, 2019 1 commit
  6. 18 Mar, 2019 1 commit
    • Carlos Garnacho's avatar
      gtkapplication: Stash DESKTOP_STARTUP_ID on a constructor · 224a53d9
      Carlos Garnacho authored
      It might be too late to do it at GtkApplication::add_platform_data time,
      since the envvar may be consumed earlier on if gdk_display_open() happened
      to be called before (eg. through gtk_get_option_group(TRUE)).
      
      Stash the envvar in a constructor function, so its ensured to happen before
      it can get consumed.
      
      Closes: #1754
      224a53d9
  7. 31 Aug, 2018 1 commit
    • Matthias Clasen's avatar
      GtkApplication: track screensaver state · 813c7b19
      Matthias Clasen authored
      A number of applications want to track the state of the screensaver.
      Make this information available as a boolean property. We only listen
      for state changes when ::register-session is set to TRUE.
      
      This is implemented for unsandboxed D-Bus access by talking
      directly to org.gnome.ScreenSaver or org.freedesktop.ScreenSaver,
      and for sandboxed D-Bus by using a (new) portal API.
      A Quartz implementation is missing.
      813c7b19
  8. 29 Nov, 2017 1 commit
  9. 16 Nov, 2017 1 commit
  10. 18 Jul, 2017 1 commit
  11. 22 Apr, 2016 4 commits
  12. 12 Apr, 2016 1 commit
  13. 10 Apr, 2016 7 commits
  14. 09 Apr, 2016 2 commits
  15. 28 Mar, 2016 1 commit
  16. 27 Mar, 2016 1 commit
  17. 18 Feb, 2016 2 commits
  18. 27 Jan, 2016 1 commit
    • Allison Karlitskaya's avatar
      Tweak startup-notification after the first window · 0d109867
      Allison Karlitskaya authored
      Presently, Gtk will only send a startup notification completion message
      for the first window that is shown.  This is not good for the case of
      GtkApplication, where we are expected to participate in
      startup-notification for all windows.
      
      We have avoided this problem by manually emitting the startup complete
      message from after_emit in GtkApplication.
      
      Unfortunately, this causes problems for windows that are shown with a
      delay.  It is also a dirty hack.
      
      The reason for the original behaviour is simple: there is a static
      boolean in gtkwindow.c which controls it.  We remove this.
      
      Instead, clear the startup notification ID stored in GDK when sending
      the completion message.  GtkApplication will re-set this the next time
      an event comes in which needs startup-notification handling.  In the
      non-GtkApplication case, newly shown windows will still not send the
      message, since the cookie will have been cleared.
      
      Finally, we remove the hack from GtkApplication's after_emit.
      
      This will probably cause some regressions in terms of lingering startup
      notification messages.  The correct solution here is to always use
      gtk_window_present(), including when merely opening a new document (with
      a new tab, for example).
      
      https://bugzilla.gnome.org/show_bug.cgi?id=690791
      0d109867
  19. 15 Jan, 2016 1 commit
  20. 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
  21. 21 Oct, 2015 1 commit
    • Matthias Clasen's avatar
      Add automatic help overlay support to GtkApplication · f6d9f9f9
      Matthias Clasen authored
      When the $(resource_prefix)/gtk/help-overlay.ui resource exists,
      load a GtkShortcutsWindow from it for each GtkApplicationWindow,
      and set up a win.show-help-overlay action with accels <Primary>F1
      and <Primary>? to show it.
      f6d9f9f9
  22. 01 Oct, 2015 1 commit
  23. 23 Sep, 2015 1 commit
  24. 12 Sep, 2015 1 commit
  25. 06 Sep, 2015 1 commit
  26. 02 Jun, 2015 1 commit
  27. 26 Apr, 2015 1 commit
  28. 10 Apr, 2015 1 commit
    • Matthias Clasen's avatar
      GtkApplication: Prevent more crashes around shutdown · 7603b527
      Matthias Clasen authored
      gtk_application_shutdown clears the impl member, so all
      callbacks, signal handlers, etc that might still be triggered
      between a shutdown call and the return from the mainloop
      better be prepared to deal with impl being NULL.
      7603b527
  29. 08 Apr, 2015 1 commit