Gitweb links:
...log
http://git.netsurf-browser.org/netsurf.git/shortlog/c2f2884f651734e8d09b9...
...commit
http://git.netsurf-browser.org/netsurf.git/commit/c2f2884f651734e8d09b93d...
...tree
http://git.netsurf-browser.org/netsurf.git/tree/c2f2884f651734e8d09b93dab...
The branch, master has been updated
via c2f2884f651734e8d09b93dab9c6e1b231b447cf (commit)
from c941cee104b16b76177401ea1bcb9f119e77f505 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff
http://git.netsurf-browser.org/netsurf.git/commitdiff/c2f2884f651734e8d09...
commit c2f2884f651734e8d09b93dab9c6e1b231b447cf
Author: Ole Loots <ole(a)monochrom.net>
Commit: Ole Loots <ole(a)monochrom.net>
Only redraw caret for top windows.
Because we do not all clipping cases...
diff --git a/atari/browser.c b/atari/browser.c
index f88610a..86401b6 100755
--- a/atari/browser.c
+++ b/atari/browser.c
@@ -669,9 +669,19 @@ void browser_restore_caret_background( struct gui_window * gw, LGRECT
* area)
area: the browser canvas
*/
void browser_redraw_caret( struct gui_window * gw, LGRECT * area )
-{
- // TODO: only redraw caret when window is topped.
- if( gw->browser->caret.redraw && gw->browser->caret.requested.g_w
> 0 ){
+{
+
+ if( gw->browser->caret.redraw && gw->browser->caret.requested.g_w
> 0 ){
+
+ short wind_info[4];
+
+ /* Only redraw caret when window is topped. */
+ wind_get( 0, WF_TOP, &wind_info[0], &wind_info[1], &wind_info[2],
&wind_info[3]);
+ if (gw->root->handle->handle != wind_info[0]) {
+ return;
+ }
+
+
LGRECT caret;
struct s_browser * b = gw->browser;
struct rect old_clip;
-----------------------------------------------------------------------
Summary of changes:
atari/browser.c | 16 +++++++++++++---
1 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/atari/browser.c b/atari/browser.c
index f88610a..86401b6 100755
--- a/atari/browser.c
+++ b/atari/browser.c
@@ -669,9 +669,19 @@ void browser_restore_caret_background( struct gui_window * gw, LGRECT
* area)
area: the browser canvas
*/
void browser_redraw_caret( struct gui_window * gw, LGRECT * area )
-{
- // TODO: only redraw caret when window is topped.
- if( gw->browser->caret.redraw && gw->browser->caret.requested.g_w
> 0 ){
+{
+
+ if( gw->browser->caret.redraw && gw->browser->caret.requested.g_w
> 0 ){
+
+ short wind_info[4];
+
+ /* Only redraw caret when window is topped. */
+ wind_get( 0, WF_TOP, &wind_info[0], &wind_info[1], &wind_info[2],
&wind_info[3]);
+ if (gw->root->handle->handle != wind_info[0]) {
+ return;
+ }
+
+
LGRECT caret;
struct s_browser * b = gw->browser;
struct rect old_clip;
--
NetSurf Browser