webengine/osswebengine/WebCore/rendering/RenderLayer.cpp
branchRCL_3
changeset 93 79859ed3eea9
parent 92 e1bea15f9a39
child 94 919f36ff910f
equal deleted inserted replaced
92:e1bea15f9a39 93:79859ed3eea9
    57 #include "HTMLNames.h"
    57 #include "HTMLNames.h"
    58 #include "HitTestRequest.h"
    58 #include "HitTestRequest.h"
    59 #include "HitTestResult.h"
    59 #include "HitTestResult.h"
    60 #include "OverflowEvent.h"
    60 #include "OverflowEvent.h"
    61 #include "PlatformMouseEvent.h"
    61 #include "PlatformMouseEvent.h"
    62 #include "PlatformScrollBar.h" 
    62 #include "PlatformScrollbar.h" 
    63 #include "RenderArena.h"
    63 #include "RenderArena.h"
    64 #include "RenderInline.h"
    64 #include "RenderInline.h"
    65 #include "RenderTheme.h"
    65 #include "RenderTheme.h"
    66 #include "RenderView.h"
    66 #include "RenderView.h"
    67 #include "SelectionController.h"
    67 #include "SelectionController.h"
   891     bool isBoxSizingBorder = renderer->style()->boxSizing() == BORDER_BOX;
   891     bool isBoxSizingBorder = renderer->style()->boxSizing() == BORDER_BOX;
   892 
   892 
   893     ExceptionCode ec;
   893     ExceptionCode ec;
   894 
   894 
   895     if (difference.width()) {
   895     if (difference.width()) {
   896         if (element->isControl()) {
   896         if (element && element->isControl()) {
   897             // Make implicit margins from the theme explicit (see <http://bugs.webkit.org/show_bug.cgi?id=9547>).
   897             // Make implicit margins from the theme explicit (see <http://bugs.webkit.org/show_bug.cgi?id=9547>).
   898             style->setProperty(CSS_PROP_MARGIN_LEFT, String::number(renderer->marginLeft()) + "px", false, ec);
   898             style->setProperty(CSS_PROP_MARGIN_LEFT, String::number(renderer->marginLeft()) + "px", false, ec);
   899             style->setProperty(CSS_PROP_MARGIN_RIGHT, String::number(renderer->marginRight()) + "px", false, ec);
   899             style->setProperty(CSS_PROP_MARGIN_RIGHT, String::number(renderer->marginRight()) + "px", false, ec);
   900         }
   900         }
   901         int baseWidth = renderer->width() - (isBoxSizingBorder ? 0
   901         int baseWidth = renderer->width() - (isBoxSizingBorder ? 0
   902             : renderer->borderLeft() + renderer->paddingLeft() + renderer->borderRight() + renderer->paddingRight());
   902             : renderer->borderLeft() + renderer->paddingLeft() + renderer->borderRight() + renderer->paddingRight());
   903         style->setProperty(CSS_PROP_WIDTH, String::number(baseWidth + difference.width()) + "px", false, ec);
   903         style->setProperty(CSS_PROP_WIDTH, String::number(baseWidth + difference.width()) + "px", false, ec);
   904     }
   904     }
   905 
   905 
   906     if (difference.height()) {
   906     if (difference.height()) {
   907         if (element->isControl()) {
   907         if (element && element->isControl()) {
   908             // Make implicit margins from the theme explicit (see <http://bugs.webkit.org/show_bug.cgi?id=9547>).
   908             // Make implicit margins from the theme explicit (see <http://bugs.webkit.org/show_bug.cgi?id=9547>).
   909             style->setProperty(CSS_PROP_MARGIN_TOP, String::number(renderer->marginTop()) + "px", false, ec);
   909             style->setProperty(CSS_PROP_MARGIN_TOP, String::number(renderer->marginTop()) + "px", false, ec);
   910             style->setProperty(CSS_PROP_MARGIN_BOTTOM, String::number(renderer->marginBottom()) + "px", false, ec);
   910             style->setProperty(CSS_PROP_MARGIN_BOTTOM, String::number(renderer->marginBottom()) + "px", false, ec);
   911         }
   911         }
   912         int baseHeight = renderer->height() - (isBoxSizingBorder ? 0
   912         int baseHeight = renderer->height() - (isBoxSizingBorder ? 0
  1296 
  1296 
  1297         // Paint the resizer control.
  1297         // Paint the resizer control.
  1298         static Image* resizeCornerImage;
  1298         static Image* resizeCornerImage;
  1299         if (!resizeCornerImage)
  1299         if (!resizeCornerImage)
  1300             resizeCornerImage = Image::loadPlatformResource("textAreaResizeCorner");
  1300             resizeCornerImage = Image::loadPlatformResource("textAreaResizeCorner");
  1301 #if PLATFORM(SYMBIAN)            	
  1301         IntPoint imagePoint(scrollCorner.right() - resizeCornerImage->width(), scrollCorner.bottom() - resizeCornerImage->height());
  1302         if(resizeCornerImage){
  1302         p->drawImage(resizeCornerImage, imagePoint);
  1303         	IntPoint imagePoint(scrollCorner.right() - resizeCornerImage->width(), scrollCorner.bottom() - resizeCornerImage->height());
  1303 
  1304         	p->drawImage(resizeCornerImage, imagePoint);
       
  1305         }
       
  1306 #else
       
  1307         	IntPoint imagePoint(scrollCorner.right() - resizeCornerImage->width(), scrollCorner.bottom() - resizeCornerImage->height());
       
  1308         	p->drawImage(resizeCornerImage, imagePoint);
       
  1309 #endif
       
  1310         // Draw a frame around the resizer (1px grey line) if there are any scrollbars present.
  1304         // Draw a frame around the resizer (1px grey line) if there are any scrollbars present.
  1311         // Clipping will exclude the right and bottom edges of this frame.
  1305         // Clipping will exclude the right and bottom edges of this frame.
  1312         if (m_hBar || m_vBar) {
  1306         if (m_hBar || m_vBar) {
  1313             p->save();
  1307             p->save();
  1314             scrollCorner.setSize(IntSize(scrollCorner.width() + 1, scrollCorner.height() + 1));
  1308             scrollCorner.setSize(IntSize(scrollCorner.width() + 1, scrollCorner.height() + 1));