diff options
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/browser.c | 14 | ||||
-rw-r--r-- | desktop/browser.h | 8 |
2 files changed, 22 insertions, 0 deletions
diff --git a/desktop/browser.c b/desktop/browser.c index 3714ad276..454fbf5e9 100644 --- a/desktop/browser.c +++ b/desktop/browser.c @@ -124,6 +124,20 @@ bool browser_window_redraw(struct browser_window *bw, int x, int y, bw->scale, 0xFFFFFF); } +/* exported interface, documented in browser.h */ +bool browser_window_redraw_ready(struct browser_window *bw) +{ + if (bw == NULL) { + LOG(("NULL browser window")); + return false; + } else if (bw->current_content != NULL) { + /* Can't render locked contents */ + return !content_is_locked(bw->current_content); + } + + return true; +} + /** * Create and open a new browser window with the given page. * diff --git a/desktop/browser.h b/desktop/browser.h index 84b0efe15..af1cecb50 100644 --- a/desktop/browser.h +++ b/desktop/browser.h @@ -272,6 +272,14 @@ bool browser_window_stop_available(struct browser_window *bw); bool browser_window_redraw(struct browser_window *bw, int x, int y, struct rect clip); +/** + * Check whether browser window is ready for redraw + * + * \param bw The window to redraw + * \return true if browser window is ready for redraw + */ +bool browser_window_redraw_ready(struct browser_window *bw); + /* In platform specific hotlist.c. */ void hotlist_visited(struct hlcache_handle *c); |