summaryrefslogtreecommitdiff
path: root/gtk
Commit message (Collapse)AuthorAgeFilesLines
...
* menubutton: Fix double freeze_notifyTimm Bäder2014-12-161-2/+2
|
* GtkGLArea: Handle window scale factor changesAlexander Larsson2014-12-161-0/+17
| | | | We need to re-allocate the buffers for the new gl size.
* GtkGLArea: Only re-allocate buffers during paintAlexander Larsson2014-12-161-40/+55
| | | | | | | | | | | | | This drops the maybe_allocate_buffers that re-allocates buffers at any point. Instead we just set have_buffers to FALSE and have the buffers re-created when needed. This also makes the buffer creation code imdeponent and makes it clean up no longer needed buffers in order to handle being called multiple times due to the above. We also ensure we re-allocate the buffers when we're resizing and the buffers are already created.
* GtkMenuTracker: one more visibility tweakRyan Lortie2014-12-141-2/+1
| | | | | | | | | | | | | | | On creation, we call action_removed() in case the action was missing from the start. Because we just created the action, 'can_activate' will always be FALSE here and this function will therefore always do nothing. We do want the visibility state to be updated though, for the case where the action is missing but the item should still be visible from the start. Update the visibility directly instead of trying to call action_removed(). https://bugzilla.gnome.org/show_bug.cgi?id=735122
* GtkMenuTrackerItem: fix submenu visibility flagRyan Lortie2014-12-141-1/+4
| | | | | | | | | | | | | | | | | We were only properly setting the "is-visible" flag to TRUE for menu items with associated actions and not (for example) on submenus. This was fine because the code for building GtkMenus from models (correctly) assumed that submenus should always be visible and never checked the property. This is not true for the Mac OS code, which actually checked the property and found it to be false for submenus. Initialise the property to TRUE so that we get the correct value reported for items that don't have actions. https://bugzilla.gnome.org/show_bug.cgi?id=735122
* quartz menu: update visibility property nameRyan Lortie2014-12-141-1/+1
| | | | | | This property is called "is-visible" now, not "visible". https://bugzilla.gnome.org/show_bug.cgi?id=735122
* popover: Clamp tail gap limits by the tail height on that sideCarlos Garnacho2014-12-131-8/+8
| | | | | | | | | All popover sides have extra margins to possibly hold the tail, this is accounted for in gtk_popover_get_rect_coords(), and should be accounted for too in the tail position calculation. This fixes the gtk_render_frame_gap() warnings seen when a popover is pushed far too close to window sides.
* popover: Ensure there is a child before focusing itCarlos Garnacho2014-12-131-2/+6
| | | | Fixes a warning in empty popovers being shown.
* inspector: Fix capitalizationMatthias Clasen2014-12-122-2/+2
|
* inspector: Add a cursor theme controlMatthias Clasen2014-12-123-2/+185
|
* Adwaita: Fix sidebar undershootMatthias Clasen2014-12-123-287/+135
| | | | | The undershoot rendering in the gtk-demo sidebar was inheriting unwanted background. Prevent that.
* stylecontext: Make sure we always clear the cache when the CSS changesBenjamin Otte2014-12-131-0/+2
| | | | | | | | After b49c7c34214da2d8d5e6dae2e8d0b0fe1b23f68e we were no longer doing a full revalidate after GTK_CSS_CHANGE_SOURCE changes. This fixes spurious failures of widgets not properly updating when changing the theme.
* Whitespace fixesMatthias Clasen2014-12-122-197/+197
|
* actions: Fix compile warningJasper St. Pierre2014-12-121-1/+1
|
* GtkFileChooser: Don't crash if invisible files are deletedMatthias Clasen2014-12-111-1/+4
| | | | | | | | | | | | | | | | | This is a crash that has been around for a long time, as can be seen here: https://bugzilla.redhat.com/show_bug.cgi?id=1048388 https://bugzilla.redhat.com/show_bug.cgi?id=984375 https://bugzilla.redhat.com/show_bug.cgi?id=1159015 https://bugzilla.redhat.com/show_bug.cgi?id=1059187 https://bugzilla.redhat.com/show_bug.cgi?id=1122172 https://bugzilla.redhat.com/show_bug.cgi?id=1016895 https://bugzilla.redhat.com/show_bug.cgi?id=1133235 https://bugzilla.redhat.com/show_bug.cgi?id=1077500 https://bugzilla.redhat.com/show_bug.cgi?id=1054378 https://bugzilla.redhat.com/show_bug.cgi?id=1173212 Fix suggested by Benjamin Otte.
* widget: add helpers to resolve GActionGroups available to GtkWidgetChristian Hergert2014-12-117-15/+50
| | | | | | | | These functions, while added for use by the GTK inspector, are generally useful to applications that need to resolve what action groups are available to a particular GtkWidget. https://bugzilla.gnome.org/show_bug.cgi?id=741386
* Make the undershoot area largerMatthias Clasen2014-12-111-1/+1
| | | | As requested by the artists, double the size from 20 to 40.
* Adwaita: tweak treeview dnd drop targetLapo Calamandrei2014-12-112-2/+6
|
* Adwaita: undershoot tweaks, more work needed.Lapo Calamandrei2014-12-113-145/+312
|
* Adwaita: Draw drag highlight around treeview rowsMatthias Clasen2014-12-113-0/+8
| | | | | This got lost somewhere. https://bugzilla.gnome.org/show_bug.cgi?id=741314
* cssselector: Reserve more bits for enumBenjamin Otte2014-12-111-1/+1
| | | | | | | Apparently some compilers make enums an int and then we get negative values. https://bugzilla.gnome.org/show_bug.cgi?id=741375
* inspector: Make header buttons as !focus-on-clickMatthias Clasen2014-12-102-0/+7
| | | | | Moving the focus to the header bar is unexpected and disruptive, so don't do it.
* inspector: Make sure something is focusable on the stats pageMatthias Clasen2014-12-101-2/+8
| | | | | | | Without this, the focus will not be inside the top_stack when we switch to the statistics page and it shows the excuse. This in turn will make the next page not take focus as expected when switching away from the statistics page again.
* inspector: Fix focus in css editorMatthias Clasen2014-12-101-0/+1
| | | | | Give the text view initial focus, so things work as expected when switching to the css editor for the first time.
* GtkStack: Improve focus handlingMatthias Clasen2014-12-101-1/+40
| | | | | | | Add notebook-like focus handling: Keep track of the last focused descendent of each page, and focus it again when switching back to the page. If there is no last focused child, we move the focus into the page as if the user had hit Tab.
* Typo fixMatthias Clasen2014-12-101-1/+1
|
* GtkEntryCompletion: fix sizing bug with multiple cellsMatt Watson2014-12-101-0/+6
| | | | | | | | | | | | | | | | | | When using a completion with some custom cells in the cell layout, if would often size wrong when first presented on screen. The entry completion is the only place in the entire gtk code base that calls gtk_tree_view_column_cell_get_size outside of gtktreeview itself. It calls into the function before the tree view has done some important validation on its cell state, the net result of which is only the first element in the gtkcellareabox the entry completion uses well actually have its size respected. We now call gtk_widget_get_preferred_size on the tree view before calling into the individual cell size routines, to guarantee that the tree view has run its validate_rows routine and cell state is valid. https://bugzilla.gnome.org/show_bug.cgi?id=741130
* GtkScrolledWindow: Take border into accountMatthias Clasen2014-12-101-2/+23
| | | | | | Use the new scrollable API for getting non-scrollable borders and draw over/undershoot at the right place. In practice, this means that they now appear below treeview headers.
* GtkTreeView: Implement get_borderMatthias Clasen2014-12-101-1/+20
| | | | | Add an implementation for the new scrollable vfunc that returns the header height as top border.
* Add a gtk_scrollable_get_borderMatthias Clasen2014-12-102-0/+36
| | | | | | | Add a vfunc to return a non-scrollable border around scrollables. This would be nicer as a property, but we can't add properties to an interface without breaking 3rd party implementations, so make this an optional vfunc, and handle it not being set.
* Adwaita: Initial theming for scrollable indicationMatthias Clasen2014-12-103-48/+93
| | | | This just uses a narrow shadow for now.
* Add a scrollable indicationMatthias Clasen2014-12-102-1/+77
| | | | | Draw a themable indication when an edge of a scrolled window is hiding some content that can be scrolled in.
* Trivial formatting fixMatthias Clasen2014-12-091-2/+2
| | | | && goes at the end of the line in GTK+ coding style.
* GtkMenuPositionFunc: Correct annotationsMatthias Clasen2014-12-091-2/+2
| | | | | | x and y are inout, not just out. https://bugzilla.gnome.org/show_bug.cgi?id=674537
* styleprovider: Fold get_change() vfunc into lookup()Benjamin Otte2014-12-108-137/+53
|
* cssselector: Rewrite change computationBenjamin Otte2014-12-101-215/+41
| | | | | We know that non-simple selectors cause a transition to the all matcher, so just assume the all matcher from that point on.
* cssselector: Redo change verificationBenjamin Otte2014-12-103-19/+10
| | | | Instead of walking the selector tree, we walk the selectors.
* cssselector: Implement tree_match() using foreach_matcher()Benjamin Otte2014-12-101-141/+22
|
* cssselector: Introduce a foreach_matcher vfuncBenjamin Otte2014-12-101-40/+100
| | | | | This vfunc iterates over all matchers of a selector and allows to write functions like the match function in a generic way using foreach.
* cssselector: Add a match_one vfuncBenjamin Otte2014-12-101-67/+52
| | | | | It allows a default implementation of the match() and tree_match() functions.
* cssselector: Introduce a few more default functionsBenjamin Otte2014-12-101-90/+26
|
* cssselector: Make specificity handling a vfuncBenjamin Otte2014-12-101-19/+66
| | | | | | | | | | | | | The new region selector tracks more than just one soimple selector, so it requires some more advanced specificity tracking. Technically, this is still not correct, because it will report the same specificity for tab:sorted and tab:sorted:sorted (and the second selector will be printed as the first) but this is regions, so meh.
* cssselector: Remove unused variableBenjamin Otte2014-12-101-13/+12
| | | | The variable is FALSE for every class now.
* cssselector: Handle region selector like any selectorBenjamin Otte2014-12-101-46/+12
| | | | | Instead of doing the previous match magic itself, use the DESCENDANT_FOR_REGION hack and let that one do the magic.
* cssselector: Use simple class macro for * selectorBenjamin Otte2014-12-101-117/+13
| | | | | As a side effect, the :not(*) selector needs to be renamed because the macro chooses a different name for it.
* cssselector: Introduce descendant matcher for regionsBenjamin Otte2014-12-101-38/+127
| | | | | | | | | This is just a way to handle regions more conveniently. What this does is to change the descendant matcher into a maybe-descendant matcher whenever the current object we're parsing might be a region. Because "*" might also refer to a region and not just a new element. See testsuite/reftests/css-match-region-matches-star.ui for a testcase.
* cssselector: Support :not() for position pseudoclassesBenjamin Otte2014-12-101-17/+4
| | | | | This is simple now that the latest commit used the macro and autogenerates the SelectorClass to use.
* cssselector: Use simple macro for position pseudoclassBenjamin Otte2014-12-101-70/+12
| | | | This is possible now that the region-specific code is gone.
* cssselector: Handle region flags during parseBenjamin Otte2014-12-101-167/+81
| | | | | | | | | | | | | When parsing a selector like tab:active We used to create 2 selector objects, one for the region, and one for the pseudoclass. Now, for convenience, we special-case region pseudoclass parsing so that the active flag is added to the region selector. A side effect is that ":nth-child(1)" no longer works for regions. Hopefully people didn't use this but used the saner ":first-child" instead.
* cssselector: Turn into a unionBenjamin Otte2014-12-102-179/+155
| | | | | Instead of just keeping a gpointer data, make GtkCssSelector a union that has actual proper members.