diff --git a/data/gui/skins/glass/bubble.png b/data/gui/skins/glass/bubble.png
index db863719f..2170f3d0c 100644
Binary files a/data/gui/skins/glass/bubble.png and b/data/gui/skins/glass/bubble.png differ
diff --git a/src/guiengine/skin.cpp b/src/guiengine/skin.cpp
index 52d8f71f1..5948ebfaa 100644
--- a/src/guiengine/skin.cpp
+++ b/src/guiengine/skin.cpp
@@ -718,6 +718,8 @@ void Skin::drawRibbonChild(const core::rect< s32 > &rect, Widget* widget, const
         /* draw "selection bubble" if relevant */
         if (always_show_selection && mark_selected)
         {
+            //GUIEngine::getDriver()->draw2DRectangle( SColor(255, 255,0,0), rect );
+
             ITexture* tex_bubble = SkinConfig::m_render_params["selectionHalo::neutral"].getImage();   
             
             const int texture_w = tex_bubble->getSize().Width;
@@ -727,15 +729,17 @@ void Skin::drawRibbonChild(const core::rect< s32 > &rect, Widget* widget, const
             core::rect<s32> source_area = core::rect<s32>(0, 0, texture_w, texture_h);
             
             const float outgrow = 0.35f; // make slightly bigger than the icon it's on
-            const int rectHeight = (int)(rect.getHeight() * (1.0f + outgrow));
-            const int rectWidth = (int)(rectHeight * aspectRatio);
+            const int rectHeight = int(rect.getHeight() * (1.0f + outgrow));
+            const int rectWidth = int(rectHeight * aspectRatio);
             const int x_gap = (rect.getWidth() - rectWidth)/2;
-            const int y_shift_up = (int)(rect.getHeight() * (outgrow/2.0f));
+            const int y_shift_up = int((rectHeight - rect.getHeight()) / 2.0f);
             
             core::rect< s32 > rect2( position2d< s32 >(rect.UpperLeftCorner.X + x_gap,
                                                        rect.UpperLeftCorner.Y - y_shift_up),
-                                    dimension2d< s32 >(rectWidth, rectHeight) );
+                                     dimension2d< s32 >(rectWidth, rectHeight) );
             
+            //GUIEngine::getDriver()->draw2DRectangleOutline( rect2, SColor(255, 0,255,0) );
+
             GUIEngine::getDriver()->draw2DImage(tex_bubble, rect2, source_area,
                                                 0 /* no clipping */, 0, true /* alpha */);
         }