Commit Graph

21376 Commits

Author SHA1 Message Date
Lapo Calamandrei
b584970b95 Adwaita: fix a typo 2014-07-28 15:34:03 +02:00
Lapo Calamandrei
c97480caab Adwaita: button drawing function rework...
...to take colored buttons into considerations, so buttons on
colored background works better now (infobars and the like).
2014-07-28 12:45:34 +02:00
Paolo Borelli
86ed270163 textview: document text mark properties 2014-07-28 12:21:17 +02:00
Jakub Steiner
1c97a5f4c6 Adwaita: remove shadows from progressbars 2014-07-27 13:39:02 +02:00
Alejandro Piñeiro
2be4474a19 a11y: unref selected item only if it is not NULL
https://bugzilla.gnome.org/show_bug.cgi?id=733610
2014-07-25 10:03:24 +02:00
Matthias Clasen
d97fd540ac inspector: Show the buildable ID in the misc tab
This is useful, since you sometimes want to use it as #id in css.
2014-07-24 08:29:12 -04:00
Matthias Clasen
3e82b77d7d inspector: Prepare misc tab for showing non-widgets
This will happen in the near future.
2014-07-24 08:14:54 -04:00
Matthias Clasen
155c45eba5 GtkPlacesSidebar: Fix editing of bookmarks
This was silently broken - the code was just assuming that the
text cell renderer is item no. 6 on the list of all cells. That
doesn't work so well if the cell renderers are set up elsewhere
and get rearranged.

Fix this by keeping an explicit pointer to the the text cell.
2014-07-23 14:11:22 -04:00
Matthias Clasen
d576069cec GtkPathBar: Use symbolic icons
This fits better with the symbolic icons we use in the places
sidebar now.
2014-07-23 13:41:57 -04:00
Matthias Clasen
d26a84889b GktFileSystem: Support rendering symbolic icons 2014-07-23 13:41:57 -04:00
Benjamin Otte
27b9efbea2 cssimage: Fix size computation for -gtk-icontheme()
For images without a concrete size but with an aspect ratio, we took the
wrong code path.

(I even copied the documentation that said "Otherwise" but didn't put an
else clause there, go me!)
2014-07-23 18:51:26 +02:00
Matthias Clasen
0d1d17107f GtkPathBar: Set style classes on buttons
Set text-button/image-button on these, just like we do for
buttons everywhere else.
2014-07-23 12:44:26 -04:00
Matthias Clasen
d758e9ddd9 GtkPathBar: Don't use GtkArrow
Instead, use an image button.
2014-07-23 12:44:26 -04:00
Lapo Calamandrei
db2133bad4 Adwaita: spinbutton button hover visible on the dark variant 2014-07-23 17:53:31 +02:00
Lapo Calamandrei
2b1cad0289 Adwaita: entry icons position fix 2014-07-23 15:25:22 +02:00
Lapo Calamandrei
4718c165ad Adwaita: backdrop check/radio fix
Set the correct color wrt the dark variant for checks/radios on
selected treeview rows.
2014-07-23 13:31:05 +02:00
Lapo Calamandrei
11245bc549 Adwaita: GtkCalendar style simplification 2014-07-23 13:26:36 +02:00
Lapo Calamandrei
d3d675511c Adwaita: accelerators 2014-07-23 12:34:00 +02:00
Lapo Calamandrei
99f72ac474 Adwaita: vertical spinbutton rtl fix 2014-07-22 20:26:43 +02:00
Lapo Calamandrei
8a01e90608 Adwaita: position needs-attention dot in rtl 2014-07-22 20:21:30 +02:00
Lapo Calamandrei
f0c0be896f Adwaita: correct color on insensitive check/radio labels 2014-07-22 20:09:18 +02:00
Lapo Calamandrei
590c32ede1 Adwaita: some more assets refresh 2014-07-22 20:02:06 +02:00
Lapo Calamandrei
80a1097060 Adwaita: .needs-attention dark variant style 2014-07-22 19:50:15 +02:00
Lapo Calamandrei
542e0db615 Adwaita: graphic assets refresh 2014-07-22 19:13:34 +02:00
Ignacio Casal Quinteiro
8f873f3aa3 gtkselection: fix warnings of unused vars on win32 2014-07-22 17:22:00 +02:00
Benjamin Otte
c4c383fa39 scrolledwindow: Remove unused variable 2014-07-22 15:06:26 +02:00
Ignacio Casal Quinteiro
fc8b7156a3 win32: add css files to EXTRA_DIST 2014-07-22 14:53:16 +02:00
Lapo Calamandrei
5ff1c9a6ef Adwaita: reduce padding on path bars 2014-07-22 14:35:01 +02:00
Carlos Garnacho
0bb955b30e treeview: Add back a check to ignore buttons > 3
The removal was not intentional, and still needed as the GtkGestureMultiPress
will work for any button unless told to lock on a single specific one.
2014-07-22 13:20:13 +02:00
Lapo Calamandrei
3d5e9c9556 Adwaita: GtkSwitch in selected list rows 2014-07-22 10:29:01 +02:00
Lapo Calamandrei
35e4421bb8 Adwaita: less distracting active list-rows 2014-07-22 10:27:49 +02:00
Lapo Calamandrei
7fe1bd70cf Adwaita: decrease column headers paddings 2014-07-22 09:58:58 +02:00
Lapo Calamandrei
a67baa51ae Adwaita: stack switcher button needs-attention fix.
Don't draw the dot when the stack switcher button is active.
2014-07-22 09:42:22 +02:00
Benjamin Otte
5a3ebb4860 stylecontext: Query style properties with correct state
Now that widget paths are allowed to have a state, use that state when
querying style properties. This uses a fast path in gtkcssprovider.c and
that is great.
2014-07-22 03:06:04 +02:00
Matthias Clasen
a0566770da GtkWidgetPath: Don't forget to copy the state
gtk_widget_path_copy was not copying the state of each element.
This was showing in "GtkRadioButton:active GtkLabel" not matching
in stack switchers.
2014-07-21 20:35:59 -04:00
Matthias Clasen
2df06d3490 GtkWidgetPath: Show states in the path string
This shows clearly that some widgets don't set the state on their
path currently.
2014-07-21 19:49:11 -04:00
Benjamin Otte
153a7e71ce stylecontext: Don't do anything with empty widget path
It's a corner case, but empty widget paths don't allow setting
state/regions/classes, so exit early

Fixes gtk/stylecontext test.
2014-07-22 01:10:21 +02:00
Matthias Clasen
0d71478237 inspector: Offer Raleigh as a theme
As long as it is included, might as well offer it.
2014-07-21 14:13:06 -04:00
Matthias Clasen
821955a998 Avoid a compiler warning 2014-07-21 14:13:06 -04:00
Benjamin Otte
3747e0fc4e css: Make commented out debug code work again 2014-07-21 19:54:14 +02:00
Benjamin Otte
09a1d983d4 css: Add printing code for :visited and :link
Don't just crash when those states are encountered
2014-07-21 19:54:14 +02:00
Lapo Calamandrei
6b8dd7beef Adwaita: stack switcher button fixes
Paddings and outline offset are ok now.
2014-07-21 19:26:41 +02:00
Lapo Calamandrei
c4b583ed47 Adwaita: bright outline on suggested/destructive action buttons 2014-07-21 19:22:24 +02:00
Lapo Calamandrei
306890ef9d Adwaita: bit padding overhaul
Header-bar and action-bar buttons used to be bigger then others
now everything is as big as those, maintaining two different sizes
for default widgets depending on the placement is a maintainance
nightmare and having controls the same size is good from a usability
point of view.
2014-07-21 18:52:58 +02:00
Matthias Clasen
c8c6da4ca4 GtkTooltip: Drop an unused variable
The toplevel_window was never set, and the only place where it
was used was causing us to hide tooltips needlessly. So removing
it is a double win.

https://bugzilla.gnome.org/show_bug.cgi?id=733321
2014-07-21 12:40:57 -04:00
Matthias Clasen
2a7577d23a inspector: Show misc info
Add yet another tab for showing information about a widget that
does not quite fit into any of the other tabs (not a property,
not style information, etc...).

For now, we show the widget state, as well as the default and
focus widget for windows.
2014-07-21 11:18:29 -04:00
Paolo Borelli
167f200a0c GtkMenuButton: do not mention GtkArrow in the docs
GtkArrow is deprecated and is not used internally anymore by the
menu button. Document also the fact that if no direction is specified
then the view-context-menu icon is shown.

https://bugzilla.gnome.org/show_bug.cgi?id=733441
2014-07-21 15:26:09 +02:00
Paolo Borelli
8b6bf3a5ea GtkMenuButton: do not use gpointer for the arrow widget
Just a small cleanup, we can use a proper type.
2014-07-21 15:26:09 +02:00
Lapo Calamandrei
81b22883fd Adwaita: header bar buttons padding fix 2014-07-21 15:24:08 +02:00
Sébastien Wilmet
9527205291 GtkTextView: use GSlice
GSlice is better for allocating structs.

https://bugzilla.gnome.org/show_bug.cgi?id=733407
2014-07-20 12:26:01 +02:00
Matthias Clasen
85297367dc GtkDialog: Manage action area visibility more carefully
People expect to be able to call gtk_widget_show_all on the dialog
to make action widgets visible, as seen e.g. in
https://bugzilla.gnome.org/show_bug.cgi?id=733431

To keep this working, we can't always set no-show-all on the
action_box. Only set it when the action_area is not used and empty.
2014-07-20 01:05:41 -04:00
Matthias Clasen
caa47b2ef4 GtkMenuItem: fix display of accelerators
The accel label in menus was getting a small allocation that
caused its draw code to always omit the accelerator string.
Fix that by setting halign to fill. To keep the menu label
left-aligned, set xalign to 0 to compensate.
2014-07-20 00:12:40 -04:00
Matthias Clasen
d6d424f920 GtkModelMenuItem: Make properties readable
This makes the inspector much more useful when dealing
with model menu items.
2014-07-19 23:40:27 -04:00
Matthias Clasen
73267102fd GtkAccelLabel: unconditionally chain up in draw
No need to check, we know for sure that GtkLabel has a draw
function.
2014-07-19 23:37:43 -04:00
Matthias Clasen
70e898bc90 inspector: Add a font button to the visual tab
The font was already settable via the gtk-font-name property
of the settings object, but this this much more convenient.
2014-07-19 19:15:58 -04:00
Gergely POLONKAI
7f7084f7f5 GtkSpinButton: Document some signals
Based on a patch by Gergely Polonkai,
https://bugzilla.gnome.org/show_bug.cgi?id=733174
2014-07-19 18:34:58 -04:00
Matthias Clasen
f7c838ce5f Trivial: Use the canonical signal name 2014-07-19 18:34:58 -04:00
Benjamin Otte
cde81e169b notebook: Don't unset state flags on child removal
We don't set any state flags, so we shouldn't unset any either.
2014-07-19 23:48:06 +02:00
Benjamin Otte
52dd0f5014 widget: Add widget state when appending to widget path
Make gtk_widget_path_append_for_widget() add the state flags of the
widget, too.

This enables the ability to select pseudoclasses on all elements in a
selector.
2014-07-19 23:42:39 +02:00
Benjamin Otte
19eb1614de cssmatcher: Use widget path's state
Don't take a state when constructing the CSS matcher. Instead, rely on
the newly introduced state in the widget path.

This way, the state can be queried not only on the first element, but on
all elements of the widget path.
2014-07-19 23:42:39 +02:00
Benjamin Otte
be09e0ed4a stylecontext: Set state flags on widget paths
Set the widget path state flags with the state flags of the style
context.

We do not update the state flags but replace the previous one because we
want to be able to have save()/restore() unset state flags.
2014-07-19 23:42:39 +02:00
Benjamin Otte
09dd0ffcd0 API: Add gtk_widget_path_iter_set_state()
And the corresponding gtk_widget_path_iter_get_state().
2014-07-19 23:42:38 +02:00
Lapo Calamandrei
71d47ef607 Adwaita: suble gradient on progressbars 2014-07-19 15:42:17 +02:00
Lapo Calamandrei
3fb249e376 Adwaita: progressbar tweaks 2014-07-19 14:03:28 +02:00
Lapo Calamandrei
58777d6084 Adwaita: insensitive backdrop state restyle
Make backdrop insensitive state more similar to the focused
windows one, mostly to make dark variant more usable and
focused -> backdrop transition less distracting.
2014-07-19 11:11:44 +02:00
Lapo Calamandrei
f5c2c81645 Adwaita: some code refactoring 2014-07-19 10:50:01 +02:00
Lapo Calamandrei
61edf40936 Adwaita: more progressbar shadows 2014-07-19 09:59:10 +02:00
Lapo Calamandrei
27f24a1732 Adwaita: widget edge for level bars 2014-07-19 09:02:07 +02:00
Matthias Clasen
ea9026e3a0 Inspector: Show directory sizes in the resource tab
This is makes it easy to answer the question: how much do resources
cost. It turns out that all the resources in GTK+ currently weigh
around 1MB.
2014-07-19 01:20:28 -04:00
Matthias Clasen
a9201b8379 GtkProgressBar: Add style classes for edges
Add left/right/top/bottom style classes according to which edge(s)
of the progressbar the progress is adjacent to. Only for a fraction
of 1.0 will we set more than one edge.
2014-07-19 00:40:09 -04:00
Matthias Clasen
04c4e1963f GtkFlowBox: Add a missing #include 2014-07-18 23:00:54 -04:00
Matthias Clasen
f4db36ef49 GtkToolbar: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:40:12 -04:00
Matthias Clasen
87b7103db1 GtkSpinButton: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:39:56 -04:00
Matthias Clasen
b5ee9da924 GtkSeparator: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:39:44 -04:00
Matthias Clasen
f1d1f139af GtkRange: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:39:32 -04:00
Matthias Clasen
18a92992a0 GtkProgressBar: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:39:11 -04:00
Matthias Clasen
9b4001ed00 GtkPaned: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:38:56 -04:00
Matthias Clasen
cd6c880790 GtkGrid: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:38:37 -04:00
Matthias Clasen
7ed133397a GtkFlowBox: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:38:16 -04:00
Matthias Clasen
b4ab29d4d5 GtkBox: Set orientable style classes initially
This was an omission, horizontal/vertical would only be set
when the orientation is changed.
2014-07-18 19:37:33 -04:00
Lapo Calamandrei
663a50dd4e Adwaita: better colorswatches for the dark theme
...which reveals a "nice" border/fill border radius issue.
2014-07-18 23:49:54 +02:00
Matthias Clasen
e2cf8d2125 GtkLevelBar: implement clipping
So level bars can have shadows, too.
2014-07-18 17:47:53 -04:00
Lapo Calamandrei
cf62f66101 Adwaita: widget edge for switch and progressbars 2014-07-18 23:30:16 +02:00
Matthias Clasen
51a5cfc783 GtkSwitch: implement clipping
So switches can have shadows, too.

https://bugzilla.gnome.org/show_bug.cgi?id=733360
2014-07-18 16:37:18 -04:00
Matthias Clasen
c2907b8532 GtkProgressBar: implement clipping
This allows progress bars to have shadows.

https://bugzilla.gnome.org/show_bug.cgi?id=733361
2014-07-18 16:32:46 -04:00
Jasper St. Pierre
a3c12ffccb gtkwindow: Clean up gtk_window_move_resize a bit more
Don't shadow existing variables. Instead of sharing the allocation and
then overwriting the width/height when convenient, declare it in the
block we use it in, as, really, the three different paths are all
extremely different, and there's no sense in sharing the variable.
2014-07-17 13:10:50 -04:00
Jasper St. Pierre
927b5a592f gtkwindow: Remove a bogus comment
gtk_window_configure_event certainly doesn't fill the new allocation
in. We're filling it in right here!
2014-07-17 13:10:50 -04:00
Matthias Clasen
24e707315f GtkDialog: Be more careful in handling the headerbar
Just because an action widget has a parent thats a headerbar,
it is not guaranteed that it is 'our' headerbar. Add some
assertions to enforce this.
2014-07-17 12:53:54 -04:00
Matthias Clasen
7b40714541 GtkDialog: rejigger headerbar handling
We can't avoid calling set_titlebar in buildable_add_child, since
GtkBuilder assumes that it can e.g. call grab_default at the end,
which only works if the widget is inside a toplevel at that point.

Instead, drop the titlebar and clean up priv->headerbar in constructed
if we find that we don't want a headerbar.
2014-07-17 12:49:57 -04:00
Sébastien Wilmet
dc1317a521 textiter: fix bug in find_visible_by_log_attrs()
find_by_log_attrs() can return true only in this case:
return moved && !gtk_text_iter_is_end (arg_iter);

So if the iter moved (i.e. something has been found), but is the end
iter, find_by_log_attrs() returns false.

Now the same checks are made in find_visible_by_log_attrs(). The public
functions using find_visible_by_log_attrs() say in their documentation
that false is returned for the end iter, hence the check with
gtk_text_iter_is_end().

https://bugzilla.gnome.org/show_bug.cgi?id=618852
2014-07-17 12:56:57 +02:00
Sébastien Wilmet
69d20f53e2 textiter: fix bug in FindLogAttrFunc functions
attrs[len] is the last PangoLogAttr available, at the iter position after the
last character of the line.

For a line in the middle or the start of the buffer, the '\n' is taken
into account by 'len'. For example the is_word_end is generally reached
before the '\n', not after. But for the last line in the buffer, where
there is no trailing '\n', it is important to test until attrs[len].

The bug didn't occur before because find_by_log_attrs() worked directly
on the iter passed as the function argument. But now it is no longer the
case.

https://bugzilla.gnome.org/show_bug.cgi?id=618852
2014-07-17 12:56:56 +02:00
Sébastien Wilmet
76f3866bd3 textiter: make the FindLogAttrFunc functions clearer
- Return true (found) and false (not found) explicitly.
- Set found_offset only when something has been found.

find_backward_cursor_pos_func() was a bit different, the while loop had
the condition "offset > 0" but the return was "offset >= 0". Probably a
micro-optimization, since offset == 0 is always a cursor position.
Anyway now the code is the same as the other functions.

https://bugzilla.gnome.org/show_bug.cgi?id=618852
2014-07-17 12:56:56 +02:00
Sébastien Wilmet
37f5f78f81 textiter: simplify FindLogAttrFunc
The min_offset parameter was always 0. Since there are some bugs in this
code, it'll be clearer if there are fewer parameters.

https://bugzilla.gnome.org/show_bug.cgi?id=618852
2014-07-17 12:56:56 +02:00
Sébastien Wilmet
5d66634482 textiter: fix bug in find_by_log_attrs()
Do not work with the iter passed as the function argument. Work with
another iter, and set it back to the function argument only if something
has been found.

This fixes a few unit tests. But there are regressions for a few others.

https://bugzilla.gnome.org/show_bug.cgi?id=618852
2014-07-17 12:56:56 +02:00
Matthias Clasen
f7e94a7389 GtkPathBar: Add a style class
This will allow nautilus to reuse the style on its own
pathbar widget.
2014-07-17 06:48:36 -04:00
Matthias Clasen
f3ef3165df GtkIconTheme: Make spinners scale in hi-dpi
The Adwaita icon theme ships spinners in a scalable directory
with MaxSize=32 and Scale=1. One way to make them scale up in
hi-dpi would be to add an @2 directory with MaxSize=32 and Scale=2,
but that directory would also be consulted in non hi-dpi situations
and give us an effective spinner max size of 64.

Instead, treat svg icons implicitly as hi-dpi, and scale them
up to MaxSize * 2 when in hi-dpi.
2014-07-17 00:59:34 -04:00
Volker Sobek
a80e77ff95 GtkMenu: Don't subtract shadow from requisition
This was causing menus to show up in the wrong position in case the menu
popped up towards the top and/or left.

The change to the requisition was in error; it is the allocated size
of the menu, not the toplevel, and doesn't include the shadow.

https://bugzilla.gnome.org/show_bug.cgi?id=591258
2014-07-16 23:29:35 -04:00
Matthias Clasen
bb6057bfb7 GtkStackSwitcher: Simplify setting of .needs-attention
Always add the .needs-attention style class, even if the button
is active. Themes can already avoid showing anything in this case.
2014-07-16 21:08:27 -04:00
Lapo Calamandrei
e084e5c67e Adwaita: increase padding on header-bar and action-bar text buttons 2014-07-16 19:47:54 +02:00
Lapo Calamandrei
0d1b036e58 Adwaita: stack switcher needs-attention class style 2014-07-16 19:42:17 +02:00