1. 05 Jun, 2017 1 commit
  2. 03 Jun, 2017 5 commits
  3. 02 Jun, 2017 8 commits
    • Daniel Boles's avatar
      testsuite/scrolledwindow: Try non-overlay/non-auto · 2aa4248e
      Daniel Boles authored
      It was only testing the default configuration, where overlay scrolling
      is on and both scrollbars use POLICY_AUTOMATIC. We should also test the
      other 3 configurations that are available by including non-overlay
      scrollbars and/or those that use POLICY_ALWAYS.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=778853
      2aa4248e
    • Daniel Boles's avatar
      ScrolledWindow: Don’t req size for autohidden bars · fcfad2dd
      Daniel Boles authored
      POLICY_AUTOMATIC means scrollbars are only shown when needed, i.e. when
      the size of the window is not large enough to show the entire child. So
      when measuring the preferred size, such scrollbars should be ignored.
      
      But measure() added size for *any* non-overlay scrollbar of the opposite
      orientation, e.g. for horizontal size, it added the width of vscrollbar.
      So we requested for child + bar, & having enough for child meant that the
      policy hid the bar, leaving extra space empty below/right of the child.
      
      Fix this by only adding size for such bars if they use POLICY_ALWAYS.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=778853
      fcfad2dd
    • Timm Bäder's avatar
      scrolledwindow: Avoid critical when removing source · 7214f4d4
      Timm Bäder authored
      Make sure indicator->conceil_timer is actually set before trying to
      remove it.
      7214f4d4
    • Dan Torop's avatar
      wayland: selectively cancel key repeat on key release · d9a9530f
      Dan Torop authored
      Under Wayland, when multiple keys are pressed and the user releases a
      key, key repeat should continue unless the key released is the one
      currently repeating.
      
      In the case of:
      
      - key1 press
      - key1 repeat
      - key2 press -> key1 repeat stopped
      - key2 repeat
      - key2 release
      
      The behavior should be to cancel keyboard repeat, though key1 is still
      held down. This is consistent with prior X11/XWayland behavior.
      
      The following also must work:
      
      - key1 press
      - key2 press
      - key2 release
      - key2 press
      - key1 release
      - key2 should continue to repeat
      
      The fix for bug #778019 should continue to work:
      
      - key1 press
      - key1 repeat
      - key2 press -> key1 repeat stopped
      - key1 release
      - key2 should repeat
      
      The choice to change the counter nkeys to the flag repeat_active
      helps to solve the second test case.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=781285
      d9a9530f
    • Olivier Fourdan's avatar
      wayland: fix xdg_surface test in move/resize drag · 2d41d772
      Olivier Fourdan authored
      begin_resize_drag() and begin_move_drag() check for xdg_surface being
      not null, but those apply on xdg_toplevel so they should check for
      xdg_toplevel being non-null instead.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=781945
      2d41d772
    • Olivier Fourdan's avatar
      wayland: check parent surface for subsurface · c94f40b8
      Olivier Fourdan authored
      When an event is received while a tooltip is showing, the GtkTooltip's
      event handling code can end up calling gdk_window_set_transient_for()
      from gtk_tooltip_set_last_window().
      
      The Wayland GDK backend will try to automatically create a subsurface
      in gdk_wayland_window_set_transient_for() but if the parent surface is
      gone meanwhile, this will will cause a crash when trying to create a
      subsurface from a parent with a null surface.
      
      Checking for the parent is not sufficient, we ought to check for the
      parent surface as well to avoid the crash.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=782283
      c94f40b8
    • Olivier Fourdan's avatar
      wayland: Do not map toplevel utility as popup · 63e05158
      Olivier Fourdan authored
      Applications can specify the type hint as utility even on toplevel
      windows.
      
      When that toplevel is also marked as a transient for another window,
      GDK Wayland backend would translate that as an xdg_popup which is not
      appropriate.
      
      While utility temp windows should remain mapped as subsurfaces (such as
      the ones used by treeviews), regular windows should not translate as
      neither a subsurface nor an xdg_popup.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=781945
      63e05158
    • Christoph Reiter's avatar
      gtkfilechoosernativewin32: Fix support for non-ASCII paths · a2e2f386
      Christoph Reiter authored
      The code used SIGDN_URL to get an URL for the selected item, but Windows URLs
      are a mix of unicode and percent encoded characters in the locale encoding
      and not something GFile can understand. The result is a garbage file
      path.
      
      Instead use SIGDN_FILESYSPATH to get a real file path if available.
      
      Also checks the return value of g_utf16_to_utf8 because file paths on
      Windows can contain lone surrogates which would make the conversion fail.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=783347
      a2e2f386
  4. 01 Jun, 2017 1 commit
  5. 31 May, 2017 5 commits
  6. 30 May, 2017 2 commits
  7. 27 May, 2017 1 commit
  8. 25 May, 2017 1 commit
  9. 23 May, 2017 3 commits
    • Emmanuele Bassi's avatar
      textview: Make GTK_TEXT_WINDOW_PRIVATE public · b492db25
      Emmanuele Bassi authored
      The GTK_TEXT_WINDOW_PRIVATE enumeration value is really *not* private.
      Internally, it's used as a simple "invalid value" marker, and
      application and library developers are supposed to use it as such in
      their own code.
      
      Let's just document it, and since the GtkTextView documentation and
      internals go a long way to state the fact that it should not be used as
      an argument value, let's add some pre-condition checks as well.
      
      This commit fixes GtkSourceView's use of GTK_TEXT_WINDOW_PRIVATE as
      default value for a GObject property that was broken by the change in
      glib-mkenums to honor the `/*< public >*/` and `/*< private >*/`
      trigraphs.
      b492db25
    • Jonas Ådahl's avatar
      tests: Add testforeign · e5ed52b6
      Jonas Ådahl authored
      Add a test for exporting a handle. There are no GTK+ API for this, but
      only per backend GDK API, and so far only Wayland is supported. There
      is a private GdkWindow API but it's not exposed externally.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=782325
      e5ed52b6
    • Jonas Ådahl's avatar
      GdkWaylandWindow: Allow calling export() multiple time · dba57db1
      Jonas Ådahl authored
      Allow getting the same export handle multiple times by calling
      gdk_wayland_window_export_handle() multiple times. For each time
      export() is called, a unexport() must be called to unexport.
      
      When the window is already exported, the exported callback is called
      via a idle handler. If there are multiple export() calls, they are
      invoked in order either when the handle is received by the display
      server, or when the idle callback is invoked.
      
      Calling unexport() will not affect future invokations of the exported
      callback, unless all export() calls have their unexport() call count
      matched.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=782325
      dba57db1
  10. 22 May, 2017 13 commits