mutter/clutter
Neil Roberts 7e112472b5 cogl-texture-2d-sliced: Use the smallest possible waste
When picking a size for the last slice in a texture, Cogl would always
pick the biggest power of two size that doesn't create too much
waste and is less than or equal to the previous slice size. However
this can end up creating a texture that is bigger than needed if there
is a smaller power of two.

For example, if the maximum waste is 127 (the current default) and we
try to create a texture that is 257 pixels wide it will decide that
the next power of two (512) is too much waste (255) so it will create
the first slice at 256 pixels wide. Then we only have 1 pixel left to
allocate but Cogl would pick the next smaller size that has a small
enough waste which is 128. But of course 1 is already a power of two
so that's redundantly oversized by 127.

This patch fixes it so that whenever it finds a size that would be big
enough, instead of using exactly that it picks the next power of two
up from the size we need to fill.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2355
2010-10-11 14:40:04 +01:00
..
cally Fixing cally.pc.in and moving include headers to previous directory 2010-10-04 13:05:02 +01:00
cogl cogl-texture-2d-sliced: Use the smallest possible waste 2010-10-11 14:40:04 +01:00
egl Merge branch 'wip/non-recursive' 2010-09-29 15:55:58 +01:00
fruity Use paint volumes to do automatic culling 2010-09-29 15:12:58 +01:00
glx Merge branch 'wip/non-recursive' 2010-09-29 15:55:58 +01:00
osx osx: Compilation fixes 2010-10-10 09:31:55 +01:00
win32 win32: Fix the CLUTTER_* keysym macros 2010-09-30 10:59:40 +01:00
x11 x11-tfp: Implement get_paint_volume virtual 2010-09-30 11:44:12 +01:00
clutter-action.c docs: Description fixes for Action and Constraint 2010-05-26 14:09:24 +01:00
clutter-action.h Add named modifiers for Action and Constraint 2010-05-20 11:19:51 +01:00
clutter-actor-meta-private.h actor: Add ActorMeta, a base class for actor modifiers 2010-05-17 16:42:10 +01:00
clutter-actor-meta.c docs: Add sub-classing notes on ActorMeta and Constraint 2010-09-17 14:54:31 +01:00
clutter-actor-meta.h actor: Add ActorMeta, a base class for actor modifiers 2010-05-17 16:42:10 +01:00
clutter-actor.c actor-box: Constify arguments for union 2010-10-04 11:27:16 +01:00
clutter-actor.h docs: Fix the annotations of ActorClass 2010-10-04 11:26:46 +01:00
clutter-align-constraint.c constraint: Re-implement using update_allocation() 2010-09-17 12:17:50 +01:00
clutter-align-constraint.h Remove trailin enum commas, avoiding C++ warnings. 2010-09-13 15:45:55 +01:00
clutter-alpha.c docs: Fixes for gtk-doc 2010-09-03 16:12:24 +01:00
clutter-alpha.h
clutter-animatable.c animatable: Allow passing a NULL animation 2010-07-31 10:56:09 +01:00
clutter-animatable.h animatable: Allow passing a NULL animation 2010-07-31 10:56:09 +01:00
clutter-animation.c animation: Allow detaching an animation from an actor 2010-09-10 11:18:53 +01:00
clutter-animation.h animation: Allow detaching an animation from an actor 2010-09-10 11:18:53 +01:00
clutter-animator.c animator: Code style fixes 2010-09-29 11:44:46 +01:00
clutter-animator.h animator,state: Mark variadic functions that ends with NULL 2010-06-07 14:22:26 +01:00
clutter-backend.c Try to clean up how we handle actor transformations 2010-09-13 18:18:34 +01:00
clutter-backend.h Constify Event accessors and copy method 2010-09-08 15:15:57 +01:00
clutter-behaviour-depth.c Added documentation for alpha parameter in Behaviour constructors. 2010-09-09 16:34:21 +01:00
clutter-behaviour-depth.h
clutter-behaviour-ellipse.c Added documentation for alpha parameter in Behaviour constructors. 2010-09-09 16:34:21 +01:00
clutter-behaviour-ellipse.h
clutter-behaviour-opacity.c Added documentation for alpha parameter in Behaviour constructors. 2010-09-09 16:34:21 +01:00
clutter-behaviour-opacity.h docs: Fix gtk-doc warnings 2010-04-22 16:39:18 +01:00
clutter-behaviour-path.c Added documentation for alpha parameter in Behaviour constructors. 2010-09-09 16:34:21 +01:00
clutter-behaviour-path.h docs: Fix the 'Since' annotation for some functions 2009-11-19 11:51:21 +00:00
clutter-behaviour-rotate.c Added documentation for alpha parameter in Behaviour constructors. 2010-09-09 16:34:21 +01:00
clutter-behaviour-rotate.h
clutter-behaviour-scale.c Added documentation for alpha parameter in Behaviour constructors. 2010-09-09 16:34:21 +01:00
clutter-behaviour-scale.h
clutter-behaviour.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-behaviour.h
clutter-bezier.c analysis: Use static functions when possible 2010-06-01 12:08:18 +01:00
clutter-bezier.h
clutter-bin-layout.c bin-layer: Fix the property blurbs 2010-10-05 07:50:52 +01:00
clutter-bin-layout.h [layout, docs] Clean up BinLayout documentation 2009-10-14 11:31:29 +01:00
clutter-bind-constraint.c constraint: Re-implement using update_allocation() 2010-09-17 12:17:50 +01:00
clutter-bind-constraint.h constraint: Re-implement using update_allocation() 2010-09-17 12:17:50 +01:00
clutter-binding-pool.c Conditionally use g_object_notify_by_pspec 2010-08-10 17:12:06 +01:00
clutter-binding-pool.h
clutter-blur-effect.c blur-effect: fix paint volume padding 2010-09-29 15:12:57 +01:00
clutter-blur-effect.h effect: Add BlurEffect 2010-06-03 14:10:55 +01:00
clutter-box-layout.c box-layout: Plug a memory leak 2010-10-08 13:29:49 +01:00
clutter-box-layout.h Add "homogeneous" mode to ClutterBoxLayout. 2010-03-25 09:41:54 +00:00
clutter-box.c introspection: Add annotations 2010-09-03 12:14:50 +01:00
clutter-box.h docs: Documentation fixes 2010-03-02 11:12:32 +00:00
clutter-cairo-texture.c Move default paint volume computation into a function 2010-09-29 15:13:00 +01:00
clutter-cairo-texture.h Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
clutter-child-meta.c Conditionally use g_object_notify_by_pspec 2010-08-10 17:12:06 +01:00
clutter-child-meta.h
clutter-click-action.c click-action: Add get_button() 2010-08-26 16:39:39 +01:00
clutter-click-action.h click-action: Add get_button() 2010-08-26 16:39:39 +01:00
clutter-clone.c ClutterClone: Handle clone_source == NULL for get_paint_volume() 2010-10-11 13:43:39 +01:00
clutter-clone.h
clutter-color.c Add caller-allocates annotations 2010-09-08 17:04:21 +01:00
clutter-color.h
clutter-colorize-effect.c effects: Make sure we're using GLSL 1.10 2010-09-21 13:32:31 +01:00
clutter-colorize-effect.h effect: Add ColorizeEffect 2010-06-03 14:10:55 +01:00
clutter-constraint.c docs: Add sub-classing notes on ActorMeta and Constraint 2010-09-17 14:54:31 +01:00
clutter-constraint.h constraint: Add ::update_allocation() 2010-09-17 12:17:50 +01:00
clutter-container.c container: Do not emit a signal in the class handler 2010-10-03 15:28:14 +01:00
clutter-container.h container: Add child_notify() wrapper 2010-09-30 14:58:23 +01:00
clutter-debug.h Use paint volumes to do automatic culling 2010-09-29 15:12:58 +01:00
clutter-deform-effect.c deform-effect: Fix Horiontal/Horizontal typo 2010-10-04 17:21:15 +01:00
clutter-deform-effect.h effect: Add DeformEffect 2010-06-10 18:40:29 +01:00
clutter-deprecated.h Fix copy-and-paste errors in the deprecation macros 2009-07-21 09:22:38 +01:00
clutter-desaturate-effect.c effects: Make sure we're using GLSL 1.10 2010-09-21 13:32:31 +01:00
clutter-desaturate-effect.h effect: Add DesaturateEffect 2010-06-03 14:10:55 +01:00
clutter-device-manager.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-device-manager.h docs: Documentation fixes 2010-03-02 11:12:32 +00:00
clutter-drag-action.c Wrap g_object_class_install_properties() 2010-09-30 10:33:24 +01:00
clutter-drag-action.h drag-action: Added x-drag-threshold and y-drag-threshold properties 2010-09-07 10:40:49 +01:00
clutter-effect.c paint volumes: another pass at the design 2010-09-29 15:12:57 +01:00
clutter-effect.h effect: Fix up the class ABI 2010-10-04 11:30:32 +01:00
clutter-enum-types.c.in
clutter-enum-types.h.in
clutter-event.c Constify Event accessors and copy method 2010-09-08 15:15:57 +01:00
clutter-event.h Remove trailin enum commas, avoiding C++ warnings. 2010-09-13 15:45:55 +01:00
clutter-feature.c Emit a critical warning if features are not initialized 2010-03-18 14:15:33 +00:00
clutter-feature.h docs: Document SWAP_EVENTS feature flag 2010-02-15 19:03:37 +00:00
clutter-fixed-layout.c layout-manager: Implement set_container() 2010-06-07 22:40:34 +01:00
clutter-fixed-layout.h [layout, docs] Document FixedLayout 2009-10-14 11:31:29 +01:00
clutter-fixed.c Add caller-allocates annotations 2010-09-08 17:04:21 +01:00
clutter-fixed.h
clutter-flow-layout.c flow-layout: Blow the cached preferred size if needed 2010-09-17 12:43:23 +01:00
clutter-flow-layout.h [layout] Remove FlowLayout:wrap 2009-10-14 11:31:30 +01:00
clutter-frame-source.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-frame-source.h
clutter-group.c paint volumes: another pass at the design 2010-09-29 15:12:57 +01:00
clutter-group.h
clutter-id-pool.c Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
clutter-id-pool.h
clutter-input-device.c Conditionally use g_object_notify_by_pspec 2010-08-10 17:12:06 +01:00
clutter-input-device.h device: Allow updating devices from embedding toolkits 2010-02-17 18:21:50 +00:00
clutter-interval.c Add caller-allocates annotations 2010-09-08 17:04:21 +01:00
clutter-interval.h interval: Add a pointer variant to compute_value() 2010-05-24 15:06:14 +01:00
clutter-keysyms-compat.h keysyms: Update the macros to CLUTTER_KEY_* 2010-09-10 17:54:52 +01:00
clutter-keysyms-table.h
clutter-keysyms-update.pl keysyms: Update the macros to CLUTTER_KEY_* 2010-09-10 17:54:52 +01:00
clutter-keysyms.h keysyms: Update the macros to CLUTTER_KEY_* 2010-09-10 17:54:52 +01:00
clutter-layout-manager.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-layout-manager.h layout: Let begin_animation() return the Alpha 2009-12-13 01:23:54 +00:00
clutter-layout-meta.c Conditionally use g_object_notify_by_pspec 2010-08-10 17:12:06 +01:00
clutter-layout-meta.h layout: Add padding to LayoutMeta 2009-12-02 11:36:25 +00:00
clutter-list-model.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-list-model.h
clutter-main.c Use paint volumes to do automatic culling 2010-09-29 15:12:58 +01:00
clutter-main.h Initialize accessibility support on clutter_init 2010-07-05 16:45:43 +01:00
clutter-marshal.list container: Fix the marshaller for ::child-notify 2010-10-03 15:12:01 +01:00
clutter-master-clock.c g_source_set_name on custom sources (if available) 2010-06-07 12:05:24 +01:00
clutter-master-clock.h ensure next iteration 2009-07-10 11:38:42 +01:00
clutter-media.c Mark property strings for translation 2010-07-15 14:07:07 +01:00
clutter-media.h Miscellaneous documentation fixes 2010-05-19 16:10:05 +01:00
clutter-model-private.h
clutter-model.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-model.h
clutter-offscreen-effect.c paint volumes: another pass at the design 2010-09-29 15:12:57 +01:00
clutter-offscreen-effect.h offscreen-effect: Rename create_target to create_buffer 2010-09-01 18:05:53 +01:00
clutter-page-turn-effect.c Replace cogl_color_set_from_* with cogl_color_init_from_* 2010-09-03 16:58:47 +01:00
clutter-page-turn-effect.h effect: Add PageTurnEffect 2010-06-10 18:40:29 +01:00
clutter-paint-volume.c Whitespace alignment fixes 2010-10-11 13:52:09 +01:00
clutter-path.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-path.h [path] MOVE_TO and LINE_TO only use a pair of coordinates 2009-10-06 10:43:41 +01:00
clutter-private.h Wrap g_object_class_install_properties() 2010-09-30 10:33:24 +01:00
clutter-profile.c profile: Update to uprof-0.3 dep for --enable-profile 2010-09-14 12:43:16 +01:00
clutter-profile.h profile: Update to uprof-0.3 dep for --enable-profile 2010-09-14 12:43:16 +01:00
clutter-rectangle.c Move default paint volume computation into a function 2010-09-29 15:13:00 +01:00
clutter-rectangle.h
clutter-score.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-score.h
clutter-script-parser.c introspection: Add missing (out) annotations 2010-09-08 15:43:07 +01:00
clutter-script-private.h Remove the internal copy of JSON-GLib 2010-09-29 15:57:28 +01:00
clutter-script.c introspection: Skip Script.connect_signals_full() 2010-10-03 15:16:41 +01:00
clutter-script.h
clutter-scriptable.c Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
clutter-scriptable.h Remove the internal copy of JSON-GLib 2010-09-29 15:57:28 +01:00
clutter-settings.c Conditionally use g_object_notify_by_pspec 2010-08-10 17:12:06 +01:00
clutter-settings.h settings: Migrate Backend settings to a new object 2010-06-21 15:55:36 +01:00
clutter-shader-effect.c Remove last uses of cogl_program_uniform* 2010-08-12 17:08:26 +01:00
clutter-shader-effect.h docs: Effects fixes for the API reference 2010-06-03 14:34:41 +01:00
clutter-shader-types.c shader-types: Check the size of the values 2010-06-16 17:14:57 +01:00
clutter-shader-types.h
clutter-shader.c introspection: Add annotations 2010-09-03 12:14:50 +01:00
clutter-shader.h
clutter-stage-manager.c Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-stage-manager.h Miscellaneous documentation fixes 2010-05-19 16:10:05 +01:00
clutter-stage-window.c stage-window: Add argument guards 2010-07-20 14:39:01 +01:00
clutter-stage-window.h Further annotation fixes 2010-09-08 16:41:47 +01:00
clutter-stage.c actor: sync entry has_clip member to clip state 2010-09-30 11:54:07 +01:00
clutter-stage.h stage: Add the NO_CLEAR_ON_PAINT hint 2010-07-13 14:57:48 +01:00
clutter-state.c docs: Description fixes for State.set_animator() 2010-09-20 14:31:53 +01:00
clutter-state.h state: Return a boolean when getting the key value 2010-08-08 19:17:14 +01:00
clutter-table-layout.c Plug a memory leak in clutter-table-layout 2010-10-08 12:11:39 +01:00
clutter-table-layout.h table-layout: Invert row/column in arguments 2010-09-23 15:17:58 +01:00
clutter-text.c text: Rename the nick of the position property "Cursor Position" 2010-10-05 08:25:06 +01:00
clutter-text.h text: Add :font-description 2010-02-03 14:38:13 +00:00
clutter-texture.c texture: Fix the typos in the blurbs and make them not end with '.' 2010-10-05 08:39:40 +01:00
clutter-texture.h [texture] Support picking textures according to their alpha channel 2010-05-28 16:07:17 +01:00
clutter-timeline.c introspection: Add annotations 2010-09-03 12:14:50 +01:00
clutter-timeline.h
clutter-timeout-interval.c Whitespace fixes 2010-02-01 10:40:34 +00:00
clutter-timeout-interval.h
clutter-timeout-pool.c g_source_set_name on custom sources (if available) 2010-06-07 12:05:24 +01:00
clutter-timeout-pool.h docs: API reference fixes 2010-09-20 13:15:44 +01:00
clutter-types.h actor-box: Constify arguments for union 2010-10-04 11:27:16 +01:00
clutter-units.c Add caller-allocates annotations 2010-09-08 17:04:21 +01:00
clutter-units.h units: Cache the pixels value inside Units 2009-10-16 15:25:37 +01:00
clutter-util.c paint_volume: Splits out clutter_paint_volume code 2010-09-29 15:13:00 +01:00
clutter-util.h Deprecate clutter_util_next_p2() 2010-02-06 10:49:33 +00:00
clutter-version.h.in docs: Documentation fixes 2010-03-02 11:12:32 +00:00
clutter.h Add ClutterTableLayout, a layout showing children in rows and columns 2010-08-10 23:20:06 +01:00
clutter.pc.in build: Start moving to a non-recursive layout 2010-09-29 14:40:15 +01:00
Makefile.am Fixing cally.pc.in and moving include headers to previous directory 2010-10-04 13:05:02 +01:00