mutter/.gitignore
Emmanuele Bassi 83b4ec7a12 units: Cache the pixels value inside Units
When computing the pixels value of a ClutterUnits value we should
be caching the value to avoid recomputing for every call of
clutter_units_to_pixels(). We already have a flag telling us to
return the cached value, but we miss the mechanism to evict the
cache whenever the Backend settings affecting the conversion, that
is default font and resolution, change.

In order to implement the eviction we can use a "serial"; the
Backend will have an internal serial field which we retrieve and
put inside the ClutterUnits structure (we split one of the two
64 bit padding fields into two 32 bit fields to maintain ABI); every
time we call clutter_units_to_pixels() we compare the units serial
with that of the Backend; if they match and pixels_set is set to
TRUE then we just return the stored pixels value. If the serials
do not match then we unset the pixels_set flag and recompute the
pixels value.

We can verify this by adding a simple test unit checking that
by changing the resolution of ClutterBackend we get different
pixel values for 1 em.

http://bugzilla.openedhand.com/show_bug.cgi?id=1843
2009-10-16 15:25:37 +01:00

231 lines
6.8 KiB
Plaintext

INSTALL
Makefile
Makefile.in
aclocal.m4
autom4te.cache
compile
clutter-*.pc
clutter.pc
.deps
.libs
*.o
*.lo
*.la
ChangeLog*
clutter/clutter-enum-types.[ch]
clutter/clutter-marshal.[ch]
clutter/clutter-version.h
clutter/stamp-*
/clutter/clutter-json.h
/clutter/cogl/cogl-defines-gl.h
/clutter/cogl/cogl-defines-gles.h
/clutter/cogl/cogl-enum-types.h
/clutter/cogl/cogl.h
/clutter/cogl/*.pc
/clutter/cogl/common/cogl-enum-types.[ch]
/clutter/cogl/common/stamp-cogl-enum-types.h
/clutter/cogl/gles/cogl-fixed-vertex-shader.[ch]
/clutter/cogl/gles/cogl-fixed-fragment-shader.[ch]
*.gir
*.typelib
/clutter/json/*.gir
cogl-defines.h
config.*
configure
depcomp
doc/manual/clutter-manual.xml
doc/reference/clutter/clutter-*.txt
!/doc/reference/clutter/clutter-sections.txt
doc/reference/clutter/html
doc/reference/clutter/tmpl
doc/reference/clutter/xml
doc/reference/clutter/clutter.args
doc/reference/clutter/clutter.hierarchy
doc/reference/clutter/clutter.interfaces
doc/reference/clutter/clutter.prerequisites
doc/reference/clutter/clutter.signals
doc/reference/clutter/clutter-docs.xml
doc/reference/clutter/*.stamp
doc/reference/clutter/*.bak
doc/reference/cogl/cogl-*.txt
!/doc/reference/cogl/cogl-sections.txt
doc/reference/cogl/html
doc/reference/cogl/tmpl
doc/reference/cogl/xml
doc/reference/cogl/cogl.args
doc/reference/cogl/cogl.hierarchy
doc/reference/cogl/cogl.interfaces
doc/reference/cogl/cogl.prerequisites
doc/reference/cogl/cogl.signals
doc/reference/cogl/cogl-docs.xml
doc/reference/cogl/*.stamp
doc/reference/cogl/*.bak
doltcompile
doltlibtool
gtk-doc.make
install-sh
libtool
ltmain.sh
missing
mkinstalldirs
stamp-h1
TAGS
/tests/interactive/*.o
/tests/conform/*.o
/tests/micro-bench/*.o
/tests/interactive/test-actor-clone
/tests/interactive/test-actors
/tests/interactive/test-behave
/tests/interactive/test-boxes
/tests/interactive/test-depth
/tests/interactive/test-effects
/tests/interactive/test-events
/tests/interactive/test-fbo
/tests/interactive/test-fullscreen
/tests/interactive/test-grab
/tests/interactive/test-model
/tests/interactive/test-multistage
/tests/interactive/test-offscreen
/tests/interactive/test-opacity
/tests/interactive/test-perspective
/tests/interactive/test-project
/tests/interactive/test-rotate
/tests/interactive/test-scale
/tests/interactive/test-score
/tests/interactive/test-script
/tests/interactive/test-shader
/tests/interactive/test-text
/tests/interactive/test-textures
/tests/interactive/test-threads
/tests/interactive/test-timeline
/tests/interactive/test-timeline-dup-frames
/tests/interactive/test-timeline-interpolate
/tests/interactive/test-timeline-rewind
/tests/interactive/test-timeline-smoothness
/tests/interactive/test-unproject
/tests/interactive/test-viewport
/tests/interactive/test-cogl-multitexture
/tests/interactive/test-cogl-offscreen
/tests/interactive/test-cogl-primitives
/tests/interactive/test-cogl-tex-convert
/tests/interactive/test-cogl-tex-foreign
/tests/interactive/test-cogl-tex-getset
/tests/interactive/test-cogl-tex-polygon
/tests/interactive/test-cogl-tex-tile
/tests/interactive/test-pixmap
/tests/interactive/test-stage-read-pixels
/tests/interactive/test-clip
/tests/interactive/test-layout
/tests/interactive/test-random-text
/tests/interactive/test-texture-quality
/tests/interactive/test-paint-wrapper
/tests/interactive/test-devices
/tests/interactive/test-label-cache
/tests/interactive/test-pick
/tests/interactive/test-animation
/tests/interactive/test-easing
/tests/interactive/test-interactive
/tests/interactive/test-binding-pool
/tests/interactive/test-text-field
/tests/interactive/light0.png
/tests/interactive/light1.png
/tests/interactive/redhand.png
/tests/interactive/redhand_alpha.png
/tests/interactive/test-script.json
/tests/interactive/test-clutter-cairo-flowers
/tests/conform/stamp-test-conformance
/tests/conform/test-anchors
/tests/conform/test-conformance
/tests/conform/test-conformance-results.xml
/tests/conform/test-conformance-results.html
/tests/conform/test-conformance-results-dn.xml
/tests/conform/test-conformance-results-dn.html
/tests/conform/test-entry-append-some
/tests/conform/test-entry-cursor
/tests/conform/test-entry-delete-chars
/tests/conform/test-entry-delete-text
/tests/conform/test-entry-empty
/tests/conform/test-entry-event
/tests/conform/test-entry-insert
/tests/conform/test-entry-prepend-some
/tests/conform/test-entry-set-empty
/tests/conform/test-entry-set-text
/tests/conform/test-entry-utf8-validation
/tests/conform/test-fixed-constants
/tests/conform/test-initial-state
/tests/conform/test-label-cache
/tests/conform/test-mapped
/tests/conform/test-path
/tests/conform/test-pick
/tests/conform/test-realized
/tests/conform/test-rect-set-color
/tests/conform/test-rect-set-size
/tests/conform/test-show-on-set-parent
/tests/conform/test-timeline
/tests/conform/test-timeline-dup-frames
/tests/conform/test-timeline-interpolate
/tests/conform/test-timeline-rewind
/tests/conform/test-timeline-smoothness
/tests/conform/test-label-opacity
/tests/conform/test-mesh-contiguous
/tests/conform/test-mesh-interleved
/tests/conform/test-mesh-mutability
/tests/conform/test-paint-opacity
/tests/conform/test-premult
/tests/conform/test-rectangle-opacity
/tests/conform/test-backface-culling
/tests/conform/test-binding-pool
/tests/conform/test-text-append-some
/tests/conform/test-text-cache
/tests/conform/test-text-cursor
/tests/conform/test-text-delete-chars
/tests/conform/test-text-delete-text
/tests/conform/test-text-empty
/tests/conform/test-text-event
/tests/conform/test-text-get-chars
/tests/conform/test-text-insert
/tests/conform/test-text-password-char
/tests/conform/test-text-prepend-some
/tests/conform/test-text-set-empty
/tests/conform/test-text-set-text
/tests/conform/test-text-utf8-validation
/tests/conform/test-vertex-buffer-contiguous
/tests/conform/test-vertex-buffer-interleved
/tests/conform/test-vertex-buffer-mutability
/tests/conform/test-list-model-iterate
/tests/conform/test-list-model-populate
/tests/conform/test-list-model-filter
/tests/conform/test-npot-texture
/tests/conform/redhand.png
/tests/conform/test-map-recursive
/tests/conform/test-realize-not-recursive
/tests/conform/test-shown-not-parented
/tests/conform/test-blend-strings
/tests/conform/test-color-from-string
/tests/conform/test-color-to-string
/tests/conform/test-units-constructors
/tests/conform/test-units-string
/tests/conform/test-premult
/tests/conform/test-clone-no-map
/tests/conform/test-materials
/tests/conform/test-group-depth-sorting
/tests/conform/test-conformance-result.xml
/tests/conform/test-fixed-size
/tests/conform/test-preferred-size
/tests/conform/test-units-cache
/tests/micro-bench/test-text-perf
/tests/micro-bench/test-text
/tests/micro-bench/test-picking
/tests/tools/disable-npots.sh
/clutter/x11/clutter-x11-enum-types.[ch]
/clutter/x11/stamp-clutter-x11-enum-types.h
/po/Makefile.in.in
/po/POTFILES
/po/*.pot
*.swn
*.swo
*.swp
*~
*.orig
*.rej