void NetscapePlugin::geometryDidChange(const IntSize& pluginSize, const IntRect& clipRect, const AffineTransform& pluginToRootViewTransform) { ASSERT(m_isStarted); if (pluginSize == m_pluginSize && m_clipRect == clipRect && m_pluginToRootViewTransform == pluginToRootViewTransform) { // Nothing to do. return; } bool shouldCallSetWindow = true; // If the plug-in doesn't want window relative coordinates, we don't need to call setWindow unless its size or clip rect changes. if (m_hasCalledSetWindow && wantsPluginRelativeNPWindowCoordinates() && m_pluginSize == pluginSize && m_clipRect == clipRect) shouldCallSetWindow = false; m_pluginSize = pluginSize; m_clipRect = clipRect; m_pluginToRootViewTransform = pluginToRootViewTransform; IntPoint frameRectLocationInWindowCoordinates = m_pluginToRootViewTransform.mapPoint(IntPoint()); m_frameRectInWindowCoordinates = IntRect(frameRectLocationInWindowCoordinates, m_pluginSize); platformGeometryDidChange(); if (!shouldCallSetWindow) return; callSetWindow(); }
void NetscapePlugin::geometryDidChange(const IntRect& frameRect, const IntRect& clipRect) { ASSERT(m_isStarted); if (m_frameRect == frameRect && m_clipRect == clipRect) { // Nothing to do. return; } m_frameRect = frameRect; m_clipRect = clipRect; platformGeometryDidChange(); callSetWindow(); }
void PluginControllerProxy::geometryDidChange(const IntRect& frameRect, const IntRect& clipRect, const SharedMemory::Handle& backingStoreHandle) { m_frameRect = frameRect; m_clipRect = clipRect; ASSERT(m_plugin); if (!backingStoreHandle.isNull()) { // Create a new backing store. m_backingStore = ShareableBitmap::create(frameRect.size(), backingStoreHandle); } m_plugin->geometryDidChange(frameRect, clipRect); platformGeometryDidChange(frameRect, clipRect); }
void PluginControllerProxy::geometryDidChange(const IntSize& pluginSize, const IntRect& clipRect, const AffineTransform& pluginToRootViewTransform, float contentsScaleFactor, const ShareableBitmap::Handle& backingStoreHandle) { ASSERT(m_plugin); m_pluginSize = pluginSize; if (contentsScaleFactor != m_contentsScaleFactor) { m_contentsScaleFactor = contentsScaleFactor; m_plugin->contentsScaleFactorChanged(m_contentsScaleFactor); } platformGeometryDidChange(); if (!backingStoreHandle.isNull()) { // Create a new backing store. m_backingStore = ShareableBitmap::create(backingStoreHandle); } m_plugin->geometryDidChange(pluginSize, clipRect, pluginToRootViewTransform); }