Commit Graph

27672 Commits

Author SHA1 Message Date
Cosimo Cecchi
35fdce68e1 cellrendererpix: make the icon render properly again
pix_rect was not initialized anymore, so the gdk_rectangle_intersect()
call would always fail.
2011-06-09 22:59:06 -04:00
Matthias Clasen
a081485269 GtkTreeView: Don't short-circuit header-height calculation
The code was putting header_height at zero when there is
no model. That leads to temporary underallocation of header
buttons.
2011-06-09 21:40:08 -04:00
Matthias Clasen
1743e18c87 GtkDialog: avoid underallocations
GtkDialog changes its size depending on style properties. If
we only do this in response to ::style-updated, it happens during
the initial realization of the dialog and leads to the dialog
'growing' between when we determine the initial window size and
when we allocate it that size. So, do this beforehand.
2011-06-09 20:43:02 -04:00
Cosimo Cecchi
3d1407a01a border-image: add support for border-image-width too
It's useful to set a slice size != border-width, as backgrounds are
clipped to border-width too.

As slices can be half-transparent and overlap the background,
this would not fill the border box properly if we only use a single
property for specifying the width.

Also, this brings us even closer to CSS3.
2011-06-09 20:01:57 -04:00
Matthias Clasen
5fcf9ae09e Don't size-allocate invisible headers
We don't ignore their size requests when determining the
column width, so allocating them is bound to spew tons
of annoying underallocation warnings.
2011-06-09 18:55:19 -04:00
Cosimo Cecchi
1208f2bde0 shadow: render icon-shadow for spinners 2011-06-09 23:17:09 +02:00
Cosimo Cecchi
aa37e7323f entry: use the current state when rendering symbolic icons
Make sure the current state is picked up when rendering symbolic icons
too.
2011-06-09 23:17:09 +02:00
Cosimo Cecchi
8efa8a067e entry: use GTK_STYLE_CLASS_IMAGE when rendering the entry icon 2011-06-09 23:17:09 +02:00
Cosimo Cecchi
430f6ecbc3 stylecontext: add an "image" style class
For images such as icons in GtkEntry widgets.
2011-06-09 23:17:09 +02:00
Cosimo Cecchi
02e82d69b8 entry: use gtk_render_icon() 2011-06-09 23:17:09 +02:00
Cosimo Cecchi
0198662d79 cellrendererpix: use gtk_render_icon() 2011-06-09 23:17:09 +02:00
Cosimo Cecchi
e6a3257b55 image: use gtk_render_icon() 2011-06-09 23:17:09 +02:00
Cosimo Cecchi
514e77581a stylecontext: add gtk_render_icon() 2011-06-09 23:17:09 +02:00
Cosimo Cecchi
0cd810ff7c themingengine: use cairo image surfaces to render state effects
This makes the code cleaner and allows this to be re-used in a
pixbuf-less future.
2011-06-09 23:17:09 +02:00
Cosimo Cecchi
2446aef0ea themingengine: add gtk_theming_engine_render_icon()
Renders a pixbuf in the provided rectangle, applying effects such as
'icon-shadow'.
2011-06-09 23:17:09 +02:00
Cosimo Cecchi
b6b66803c0 shadow: add _gtk_icon_shadow_paint()
Paints a shadow of the current source, using the defined colors.
2011-06-09 23:17:09 +02:00
Cosimo Cecchi
ef78d5b730 styleproperties: add an 'icon-shadow' style property
It's a custom property with the same semantics of text-shadow, which
works on icons and icon-like UI elements, such as spinners, arrows and
separators.
2011-06-09 23:17:09 +02:00
Cosimo Cecchi
c935439a72 border-image: fix a horizontal/vertical index typo 2011-06-09 17:06:00 -04:00
Jorge González
2daba94825 Updated Spanish translation 2011-06-09 23:05:15 +02:00
Cosimo Cecchi
aa515e71d1 spinbutton: don't render an additional background below arrows
It's an entry, so it already has a background below, even when the entry
doesn't have a frame. Also, gtk_spin_button_draw_arrow() will render a
background and a frame in the arrow space anyway.
2011-06-09 15:06:19 -04:00
Cosimo Cecchi
4d8b5baf7e spinbutton: don't remove the entry style class while rendering arrows 2011-06-09 15:06:18 -04:00
Cosimo Cecchi
42d7487a6e border-image: don't try to unpack values from a NULL border-image
NULL is a valid value for border-image, so if it's NULL when unpacking,
don't try to access the struct fields, but just init the GValues for the
unpacked parameters.
2011-06-09 15:06:18 -04:00
Murray Cumming
fe7125e00c gtkcssprovider.h: Remove a trailing comma. 2011-06-09 20:36:14 +02:00
Richard Hughes
9bff51e538 Add optional colord support to the CUPS print module
This functionality adds a new 'Printer Profile' entry to the 'Color' page in the
UNIX print dialog if colord support is enabled.

This shows the user what color profile will be used for the settings they have
selected, and if no profile or the default profile is going to be used.

We are deliberately not allowing the user to _change_ the selected profile, as
the ICC profile is an implementation detail, and we should not change the other
print settings based on the characterization state.

The OpenICC group broadly recommend showing the profile that is used, so that
power users can be sure the correct profile is being used at the right time.

Normal users won't care, as they don't know how horrible the color match is
without profiling the printer and media.
2011-06-09 18:31:02 +01:00
Richard Hughes
16d0fca4f5 Add a 'value' GObject property to GtkPrinterOption so that it can be used with g_object_bind_property() 2011-06-09 15:50:34 +01:00
Kjartan Maraas
84b3d63838 Updated Norwegian bokmål translation 2011-06-09 13:02:39 +02:00
Benjamin Otte
77c102ae6e testtreeview: Don't use deprecated classes to make things interesting 2011-06-09 06:21:11 +02:00
Benjamin Otte
6114b06b3b testgtk: Fix deprecation 2011-06-09 06:20:42 +02:00
Benjamin Otte
2fd625d191 gail: Fix for new box handling 2011-06-09 06:18:10 +02:00
Benjamin Otte
acaaca4c76 gail: Fix scrollbar index_in_parent() implementation 2011-06-09 06:16:23 +02:00
Benjamin Otte
dee2e74736 gail: Remove unreachable code 2011-06-09 06:00:34 +02:00
Benjamin Otte
53e3f43217 reftests: ADd test for overlapping border-image slices 2011-06-09 05:51:55 +02:00
Benjamin Otte
88026c5073 themingengine: Don't modify pattern
Instead, scale/unscale the cairo_t.
2011-06-09 05:51:54 +02:00
Benjamin Otte
9affa9fc4d reftests: Add border-image-repeat
Tests that border-image-repeat is rendered correctly.
The reftest is done via toolbars stuffed into a GtkFixed using
background-image and images tuned for it.
2011-06-09 05:51:54 +02:00
Benjamin Otte
3ef4a3d46f border-image: Redo border-image rendering
The new code is smaller, less crashy and correct(er), but arguably more
complex. I'd have liked to make it simpler, but this border image
algorithm is complex...
2011-06-09 05:51:54 +02:00
Benjamin Otte
9606633d94 border-image-repeat: Fix order of hrepeat and vrepeat 2011-06-09 05:51:54 +02:00
Benjamin Otte
4f8283055e border-image: Don't use NEAREST filtering
use EXTEND_PAD instead to avoid borders.
2011-06-09 05:51:54 +02:00
Benjamin Otte
c0a6b1fb90 borderimage: No need to resolve
border-image is a shorthand, so it's unpacked unresolved and repacked
resolved.
2011-06-09 05:51:54 +02:00
Cosimo Cecchi
4e95e6ae21 border-image: move private types to gtkcsstypes.c 2011-06-09 05:51:54 +02:00
Cosimo Cecchi
052d6ef6da border-image: don't cache the cairo_surface_t in GtkBorderImage
It's not useful to cache these surfaces here, as the GtkBorderImage will
be always generated on the fly, being a shorthand property.

This also allows to get rid of the intermediate image surfaces for
rendering the slices; we now use cairo_surface_create_for_rectangle()
to proxy the slices from the source surface to the rendered area, which
should also yield better performance.
2011-06-09 05:51:54 +02:00
Cosimo Cecchi
a2a8d3e8f4 docs: expand the docs for border-image
https://bugzilla.gnome.org/show_bug.cgi?id=651194
2011-06-09 05:51:54 +02:00
Cosimo Cecchi
4cfccde6da border-image: ensure image->resolved is set when resolving the gradient
https://bugzilla.gnome.org/show_bug.cgi?id=651194
2011-06-09 05:51:54 +02:00
Cosimo Cecchi
83a383e4ba reftests: add reftests for border-image with gradient and url sources
https://bugzilla.gnome.org/show_bug.cgi?id=651194
2011-06-09 05:51:54 +02:00
Cosimo Cecchi
e3dd437b67 styleproperty: turn border-image into a shorthand property
It's composed by
- border-image-source: a cairo_pattern_t holding an image from file or a
  gradient
- border-image-slice: a GtkBorder containing the slice offsets to apply
  on the image
- border-image-repeat: a GtkRepeatType for the image

We deviate from pure CSS3 in the following ways:

* border-image-width is assumed to be always 1, i.e. always equal to
  what's specified by border-width. I don't think it's a particularly
  useful property to have, but we could add it later if needed.
* border-image-outset is absent, as we can't render outside of the
  allocation yet.

https://bugzilla.gnome.org/show_bug.cgi?id=651194
2011-06-09 05:51:54 +02:00
Cosimo Cecchi
9976530fe0 border-image: change Gtk9Slice to GtkBorderImage
It's a similar private type, which is much more powerful, and respects
the CSS rendering specification for border-image.

https://bugzilla.gnome.org/show_bug.cgi?id=651194
2011-06-09 05:51:53 +02:00
Benjamin Otte
e45230ad39 gdk: Make background changes queue a repaint
For client-side windows, we need to queue a repaint when the background
changes. For native windows, the windowing system does take care of it,
but client-side windows are our own, so we gotta do it manually.

https://bugzilla.gnome.org/show_bug.cgi?id=652102
2011-06-09 05:51:53 +02:00
Benjamin Otte
2a4c361831 gdk: Don't set backgrounds on input-only windows
It doesn't make sense to allow a background on input-only windows, so
instead of setting it and then never using it, we just don't ever set
it.
2011-06-09 05:51:53 +02:00
Benjamin Otte
4dbeac9275 toolpalette: Remove composite support
It seems to be very broken wrt input handling, causing random icons to
light up etc.
So until this is fixed, better remove composite support. It only removes
animations, so it's not a big loss for functionality.
2011-06-09 05:51:36 +02:00
Michal Suchanek
a64bc46c9e bgo#652045 - Initialize local_only in GtkFileChooserEntry
This has to be done also when we switch to the entry, otherwise completion for
non-local URIs won't work.
2011-06-08 16:24:48 -05:00
Marek Kašík
f737246a6a Trivial optimisation in GtkPrinterOptionWidget
Signed-off-by: Richard Hughes <richard@hughsie.com>
2011-06-08 18:23:11 +01:00