Page Speed Optimization Libraries  1.13.35.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Attributes | Friends | List of all members
net_instaweb::ResponsiveImageFirstFilter Class Reference

#include "responsive_image_filter.h"

Inheritance diagram for net_instaweb::ResponsiveImageFirstFilter:
net_instaweb::CommonFilter net_instaweb::EmptyHtmlFilter net_instaweb::HtmlFilter

Public Member Functions

 ResponsiveImageFirstFilter (RewriteDriver *driver)
 
virtual void StartElementImpl (HtmlElement *element)
 
virtual void StartDocumentImpl ()
 
virtual void EndElementImpl (HtmlElement *element)
 
virtual const char * Name () const
 The name of this filter – used for logging and debugging.
 
- Public Member Functions inherited from net_instaweb::CommonFilter
 CommonFilter (RewriteDriver *driver)
 
const GoogleUrlbase_url () const
 Getters. More...
 
const GoogleUrldecoded_base_url () const
 
RewriteDriverdriver () const
 
HtmlElementnoscript_element () const
 
void InsertNodeAtBodyEnd (HtmlNode *data)
 
virtual void StartDocument ()
 Note: Don't overload these methods, overload the implementers instead!
 
virtual void StartElement (HtmlElement *element)
 
virtual void EndElement (HtmlElement *element)
 
virtual void Characters (HtmlCharactersNode *characters)
 
ResourcePtr CreateInputResource (StringPiece input_url, RewriteDriver::InputRole role, bool *is_authorized)
 
ResourcePtr CreateInputResourceOrInsertDebugComment (StringPiece input_url, RewriteDriver::InputRole role, HtmlElement *element)
 
void ResolveUrl (StringPiece input_url, GoogleUrl *out_url)
 
bool IsRelativeUrlLoadPermittedByCsp (StringPiece url, CspDirective role)
 
bool BaseUrlIsValid () const
 
bool DebugMode () const
 
bool CanAddPagespeedOnloadToImage (const HtmlElement &)
 
virtual void LogFilterModifiedContent ()
 
virtual
RewriteDriver::InlineAuthorizationPolicy 
AllowUnauthorizedDomain () const
 
virtual bool IntendedForInlining () const
 
void AddJsToElement (StringPiece js, HtmlElement *script)
 
- Public Member Functions inherited from net_instaweb::EmptyHtmlFilter
virtual void EndDocument ()
 
virtual void Cdata (HtmlCdataNode *cdata)
 Called for CDATA blocks (e.g. <![CDATA[foobar]]>)
 
virtual void Comment (HtmlCommentNode *comment)
 Called for HTML comments that aren't IE directives (e.g. ).
 
virtual void IEDirective (HtmlIEDirectiveNode *directive)
 
virtual void Directive (HtmlDirectiveNode *directive)
 Called for HTML directives (e.g. <!doctype foobar>).
 
virtual void Flush ()
 
virtual void DetermineEnabled (GoogleString *disabled_reason)
 
virtual bool CanModifyUrls ()
 
ScriptUsage GetScriptUsage () const override
 
- Public Member Functions inherited from net_instaweb::HtmlFilter
virtual void RenderDone ()
 
bool is_enabled () const
 
void set_is_enabled (bool is_enabled)
 

Static Public Attributes

static const char kOriginalImage []
 Labels for different images used by Responsive image filters.
 
static const char kNonInlinableVirtualImage []
 
static const char kInlinableVirtualImage []
 
static const char kFullsizedVirtualImage []
 
- Static Public Attributes inherited from net_instaweb::CommonFilter
static const char kCreateResourceFailedDebugMsg []
 Debug message to be inserted when resource creation fails.
 

Friends

class ResponsiveImageSecondFilter
 

Additional Inherited Members

- Public Types inherited from net_instaweb::HtmlFilter
enum  ScriptUsage { kWillInjectScripts, kMayInjectScripts, kNeverInjectsScripts }
 Describes a filter's relationship with scripts. More...
 
- Static Public Member Functions inherited from net_instaweb::CommonFilter
static bool ExtractMetaTagDetails (const HtmlElement &element, const ResponseHeaders *headers, GoogleString *content, GoogleString *mime_type, GoogleString *charset)
 
- Protected Member Functions inherited from net_instaweb::CommonFilter
ServerContextserver_context () const
 
const RewriteOptionsrewrite_options ()
 
virtual const char * LoggingId ()
 

Detailed Description

Filter which converts tags into responsive srcset= counterparts by rewriting the images at multiple resolutions. The filter actually runs twice. Once before rewrite_images to split an element into multiple elements (one for each resolution). The second time, it runs after rewrite_images have been rendered and it combines the elements back together into a single element with srcset=. It also adds JavaScript to polyfill and add zoom responsiveness to srcset.

Member Function Documentation

virtual void net_instaweb::ResponsiveImageFirstFilter::StartDocumentImpl ( )
virtual

Overload these implementer methods: Intentionally left abstract so that implementers don't forget to change the name from Blah to BlahImpl.

Implements net_instaweb::CommonFilter.


The documentation for this class was generated from the following file: