From bccf101714f2ca165b1fd754879f3813993d26ca Mon Sep 17 00:00:00 2001 From: Daniel Silverstone Date: Mon, 5 Aug 2019 15:44:55 +0100 Subject: browser_window: Add fetch parameters and split navigate In order to support future reload/strange navigations, split the navigate function into two and add a stored parameters structure which can be used to regenerate any fetch. Signed-off-by: Daniel Silverstone --- desktop/browser_private.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'desktop/browser_private.h') diff --git a/desktop/browser_private.h b/desktop/browser_private.h index 23fbf8904..0883c54ac 100644 --- a/desktop/browser_private.h +++ b/desktop/browser_private.h @@ -75,6 +75,19 @@ struct history { int height; }; +/** + * The parameters for a fetch. + */ +struct browser_fetch_parameters { + struct nsurl *url; /**< The URL to fetch */ + struct nsurl *referrer; /**< Optional refererer */ + enum browser_window_nav_flags flags; /**< Navigation flags */ + char *post_urlenc; /**< URL encoded post data */ + struct fetch_multipart_data *post_multipart; /**< Multipart post data */ + char *parent_charset; /**< Optional parent character set */ + bool parent_quirks; /**< Optional parent quirks */ +}; + /** * Browser window data. */ @@ -84,12 +97,23 @@ struct browser_window { * READY or DONE status or NULL for no content. */ struct hlcache_handle *current_content; + + /** + * The fetch parameters for the current content + */ + struct browser_fetch_parameters current_parameters; + /** * Content handle of page in process of being loaded or NULL * if no page is being loaded. */ struct hlcache_handle *loading_content; + /** + * The fetch parameters for the loading content + */ + struct browser_fetch_parameters loading_parameters; + /** * Favicon */ -- cgit v1.2.3