<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>15646</bug_id>
          
          <creation_ts>2007-10-23 17:00:05 -0700</creation_ts>
          <short_desc>[GTK] caretBlinkFrequency is hard-coded in Frame.cpp</short_desc>
          <delta_ts>2007-10-27 22:46:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alp Toker">alp</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>59276</commentid>
    <comment_count>0</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-23 17:00:05 -0700</bug_when>
    <thetext>WebCore/page/Frame.cpp:

static const double caretBlinkFrequency = 0.5;

On GTK+ at least, this is configurable. It can even change while the application is running, so we need to abstract this setting. It does not, however, need to be configurable in any public API.

From gtktextview.c in GTK+:

static gboolean
cursor_blinks (GtkTextView *text_view)
{
  GtkSettings *settings = gtk_widget_get_settings (GTK_WIDGET (text_view));
  gboolean blink;

#ifdef DEBUG_VALIDATION_AND_SCROLLING
  return FALSE;
#endif
  if (gtk_debug_flags &amp; GTK_DEBUG_UPDATES)
    return FALSE;

  g_object_get (settings, &quot;gtk-cursor-blink&quot;, &amp;blink, NULL);

  if (!blink)
    return FALSE;

  if (text_view-&gt;editable)
    {
      GtkTextMark *insert;
      GtkTextIter iter;
      
      insert = gtk_text_buffer_get_insert (get_buffer (text_view));
      gtk_text_buffer_get_iter_at_mark (get_buffer (text_view), &amp;iter, insert);
      
      if (gtk_text_iter_editable (&amp;iter, text_view-&gt;editable))
	return blink;
    }

  return FALSE;
}

static gint
get_cursor_time (GtkTextView *text_view)
{
  GtkSettings *settings = gtk_widget_get_settings (GTK_WIDGET (text_view));
  gint time;

  g_object_get (settings, &quot;gtk-cursor-blink-time&quot;, &amp;time, NULL);

  return time;
}

static gint
get_cursor_blink_timeout (GtkTextView *text_view)
{
  GtkSettings *settings = gtk_widget_get_settings (GTK_WIDGET (text_view));
  gint time;

  g_object_get (settings, &quot;gtk-cursor-blink-timeout&quot;, &amp;time, NULL);

  return time;
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59470</commentid>
    <comment_count>1</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-25 14:55:44 -0700</bug_when>
    <thetext>Any suggestions where a good place to abstract this would be?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59646</commentid>
    <comment_count>2</comment_count>
      <attachid>16905</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-27 19:53:39 -0700</bug_when>
    <thetext>Created attachment 16905
[PATCH] Fix header dependencies in the build system


INCLUDEPATH and DEPENDPATH are now up to date.
---
 WebCore/WebCore.pro |   37 ++++++++++++++++++++++++++-----------
 1 files changed, 26 insertions(+), 11 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59647</commentid>
    <comment_count>3</comment_count>
      <attachid>16906</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-27 20:05:18 -0700</bug_when>
    <thetext>Created attachment 16906
[PATCH] http://bugs.webkit.org/show_bug.cgi?id=15646

[GTK] caretBlinkFrequency is hard-coded in Frame.cpp

Abstract caretBlinkFrequency to RenderTheme.
---
 WebCore/page/Frame.cpp                  |    4 +---
 WebCore/platform/gtk/RenderThemeGtk.cpp |   23 +++++++++++++++++++++++
 WebCore/platform/gtk/RenderThemeGtk.h   |    3 +++
 WebCore/rendering/RenderTheme.h         |    2 ++
 4 files changed, 29 insertions(+), 3 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59648</commentid>
    <comment_count>4</comment_count>
      <attachid>16905</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-27 20:06:25 -0700</bug_when>
    <thetext>Comment on attachment 16905
[PATCH] Fix header dependencies in the build system

Not for review. (Was experimenting with a modified git-send-bugzilla.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59656</commentid>
    <comment_count>5</comment_count>
      <attachid>16906</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2007-10-27 22:19:44 -0700</bug_when>
    <thetext>Comment on attachment 16906
[PATCH] http://bugs.webkit.org/show_bug.cgi?id=15646

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59660</commentid>
    <comment_count>6</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-27 22:46:15 -0700</bug_when>
    <thetext>Landed in r27169.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16905</attachid>
            <date>2007-10-27 19:53:39 -0700</date>
            <delta_ts>2007-10-27 20:06:25 -0700</delta_ts>
            <desc>[PATCH] Fix header dependencies in the build system</desc>
            <filename>-Fix-header-dependencies-in-the-build-system.patch</filename>
            <type>text/plain</type>
            <size>1810</size>
            <attacher name="Alp Toker">alp</attacher>
            
              <data encoding="base64">Y2EzOTMzMjI4NDlmOTAzYTk0MTg3OWFiZTVjMjlmNDkwMjFhNDgxYQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggNTEwYzg4Zi4uMmJh
MDdjMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3JlL1dlYkNv
cmUucHJvCkBAIC05MiwyMyArOTIsMzggQEAgREVQRU5EUEFUSCArPSBlZGl0aW5nL3F0IGhpc3Rv
cnkvcXQgbG9hZGVyL3F0IHBhZ2UvcXQgXAogCiBndGstcG9ydCB7CiAgICAgSU5DTFVERVBBVEgg
Kz0gXAorICAgICQkUFdEL3BsYXRmb3JtL2d0ayBcCisgICAgJCRQV0QvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3RrIFwKKyAgICAkJFBXRC9wbGF0Zm9ybS9ncmFwaGljcy9jYWlybyBcCiAgICAgJCRQV0Qv
cGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2NhaXJvIFwKKyAgICAkJFBXRC9wbGF0Zm9ybS9uZXR3b3Jr
L2N1cmwgXAogICAgICQkUFdEL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcCBcCiAgICAgJCRQ
V0QvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmIFwKICAgICAkJFBXRC9wbGF0Zm9ybS9pbWFn
ZS1kZWNvZGVycy9pY28gXAogICAgICQkUFdEL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcg
XAogICAgICQkUFdEL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3BuZyBcCi0gICAgJCRQV0QvcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMveGJtCi0KLSAgICBERVBFTkRQQVRIICs9IHBsYXRmb3JtL2dy
YXBoaWNzL2dkayAgICAgICBcCi0gICAgICAgICAgICAgICAgICBwbGF0Zm9ybS9nZGsgICAgICAg
ICAgICAgICAgXAotICAgICAgICAgICAgICAgICAgbG9hZGVyL2dkayAgICAgICAgICAgICAgICAg
IFwKLSAgICAgICAgICAgICAgICAgIHBhZ2UvZ2RrICAgICAgICAgICAgICAgICAgICBcCi0gICAg
ICAgICAgICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9jYWlybyAgICAgXAotICAgICAgICAgICAg
ICAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2NhaXJvIFwKLSAgICAgICAgICAgICAgICAgIHBs
YXRmb3JtL25ldHdvcmsvY3VybCAgICAgICBcCi0gICAgICAgICAgICAgICAgICAuLi9XZWJLaXQv
Z3RrL0FwaSAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICAgLi4vV2ViS2l0L2d0ay9XZWJD
b3JlU3VwcG9ydAorICAgICQkUFdEL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3hibSBcCisgICAg
JCRQV0QvbG9hZGVyL2d0ayBcCisgICAgJCRQV0QvcGFnZS9ndGsgXAorICAgICQkUFdELy4uL1dl
YktpdC9ndGsvV2ViQ29yZVN1cHBvcnQgXAorICAgICQkUFdELy4uL1dlYktpdC9ndGsvQXBpCisK
KyAgICBERVBFTkRQQVRIICs9IFwKKyAgICBwbGF0Zm9ybS9ndGsgXAorICAgIHBsYXRmb3JtL2dy
YXBoaWNzL2d0ayBcCisgICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8gXAorICAgIHBsYXRmb3Jt
L2dyYXBoaWNzL3N2Zy9jYWlybyBcCisgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsIFwKKyAgICBw
bGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAgXAorICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L2dpZiBcCisgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvaWNvIFwKKyAgICBwbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9qcGVnIFwKKyAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcgXAor
ICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3hibSBcCisgICAgbG9hZGVyL2d0ayBcCisgICAg
cGFnZS9ndGsgXAorICAgIC4uL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQgXAorICAgIC4uL1dl
YktpdC9ndGsvQXBpCiB9CiAKIElOQ0xVREVQQVRIICs9ICAkJFBXRCBcCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16906</attachid>
            <date>2007-10-27 20:05:18 -0700</date>
            <delta_ts>2007-10-27 22:19:44 -0700</delta_ts>
            <desc>[PATCH] http://bugs.webkit.org/show_bug.cgi?id=15646</desc>
            <filename>-http-bugs.webkit.org-show_bug.cgi-id-15646.patch</filename>
            <type>text/plain</type>
            <size>2901</size>
            <attacher name="Alp Toker">alp</attacher>
            
              <data encoding="base64">MGJjMmIwZmNmMTA2N2Y4ZGI4ZGU2NDA0ZDY4ZDE1YmZkNDU0YzZmNApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wYWdlL0ZyYW1lLmNwcCBiL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKaW5kZXggOTMxMGVi
YS4uZTg3MTE3NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAorKysgYi9XZWJD
b3JlL3BhZ2UvRnJhbWUuY3BwCkBAIC05MCw4ICs5MCw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IHVzaW5nIG5hbWVzcGFjZSBFdmVudE5hbWVzOwogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsK
IAotc3RhdGljIGNvbnN0IGRvdWJsZSBjYXJldEJsaW5rRnJlcXVlbmN5ID0gMC41OwotCiBkb3Vi
bGUgRnJhbWU6OnNfY3VycmVudFBhaW50VGltZVN0YW1wID0gMC4wOwogCiBjbGFzcyBVc2VyU3R5
bGVTaGVldExvYWRlciA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCB7CkBAIC02MjAsNyAr
NjE4LDcgQEAgdm9pZCBGcmFtZTo6c2VsZWN0aW9uTGF5b3V0Q2hhbmdlZCgpCiAgICAgLy8gU3Rh
cnQgYmxpbmtpbmcgd2l0aCBhIGJsYWNrIGNhcmV0LiBCZSBzdXJlIG5vdCB0byByZXN0YXJ0IGlm
IHdlJ3JlCiAgICAgLy8gYWxyZWFkeSBibGlua2luZyBpbiB0aGUgcmlnaHQgbG9jYXRpb24uCiAg
ICAgaWYgKHNob3VsZEJsaW5rICYmICFkLT5tX2NhcmV0QmxpbmtUaW1lci5pc0FjdGl2ZSgpKSB7
Ci0gICAgICAgIGQtPm1fY2FyZXRCbGlua1RpbWVyLnN0YXJ0UmVwZWF0aW5nKGNhcmV0QmxpbmtG
cmVxdWVuY3kpOworICAgICAgICBkLT5tX2NhcmV0QmxpbmtUaW1lci5zdGFydFJlcGVhdGluZyh0
aGVtZSgpLT5jYXJldEJsaW5rRnJlcXVlbmN5KCkpOwogICAgICAgICBpZiAoIWQtPm1fY2FyZXRQ
YWludCkgewogICAgICAgICAgICAgZC0+bV9jYXJldFBhaW50ID0gdHJ1ZTsKICAgICAgICAgICAg
IHNlbGVjdGlvbkNvbnRyb2xsZXIoKS0+aW52YWxpZGF0ZUNhcmV0UmVjdCgpOwpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvUmVuZGVyVGhlbWVHdGsuY3BwIGIvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvUmVuZGVyVGhlbWVHdGsuY3BwCmluZGV4IGQ5NTk5OTYuLjFlMWFkYTMgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmNwcAorKysgYi9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5jcHAKQEAgLTM2Nyw2ICszNjcsMjkgQEAg
Q29sb3IgUmVuZGVyVGhlbWVHdGs6OmluYWN0aXZlTGlzdEJveFNlbGVjdGlvbkZvcmVncm91bmRD
b2xvcigpIGNvbnN0CiAgICAgcmV0dXJuIENvbG9yKGNvbG9yLnJlZCA+PiA4LCBjb2xvci5ncmVl
biA+PiA4LCBjb2xvci5ibHVlID4+IDgpOwogfQogCitib29sIFJlbmRlclRoZW1lR3RrOjpjYXJl
dFNob3VsZEJsaW5rKCkgY29uc3QKK3sKKyAgICBHdGtTZXR0aW5ncyogc2V0dGluZ3MgPSBndGtf
d2lkZ2V0X2dldF9zZXR0aW5ncyhndGtFbnRyeSgpKTsKKworICAgIGdib29sZWFuIHZhbHVlOwor
ICAgIGdfb2JqZWN0X2dldChzZXR0aW5ncywgImd0ay1jdXJzb3ItYmxpbmsiLCAmdmFsdWUsIDAp
OworCisgICAgcmV0dXJuIHZhbHVlOworfQorCitkb3VibGUgUmVuZGVyVGhlbWVHdGs6OmNhcmV0
QmxpbmtGcmVxdWVuY3koKSBjb25zdAoreworICAgIGlmICghY2FyZXRTaG91bGRCbGluaygpKQor
ICAgICAgICByZXR1cm4gMDsKKworICAgIEd0a1NldHRpbmdzKiBzZXR0aW5ncyA9IGd0a193aWRn
ZXRfZ2V0X3NldHRpbmdzKGd0a0VudHJ5KCkpOworCisgICAgZ2ludCB0aW1lOworICAgIGdfb2Jq
ZWN0X2dldChzZXR0aW5ncywgImd0ay1jdXJzb3ItYmxpbmstdGltZSIsICZ0aW1lLCAwKTsKKwor
ICAgIHJldHVybiB0aW1lIC8gMjAwMC47Cit9CisKIHZvaWQgUmVuZGVyVGhlbWVHdGs6OnN5c3Rl
bUZvbnQoaW50IHByb3BJZCwgRm9udERlc2NyaXB0aW9uJikgY29uc3QKIHsKIH0KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmggYi9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oCmluZGV4IDBiNTY4NmEuLjY1ZjVkMTUgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmgKKysrIGIvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvUmVuZGVyVGhlbWVHdGsuaApAQCAtNzMsNiArNzMsOSBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCBDb2xvciBpbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3Io
KSBjb25zdDsKICAgICB2aXJ0dWFsIENvbG9yIGluYWN0aXZlTGlzdEJveFNlbGVjdGlvbkZvcmVn
cm91bmRDb2xvcigpIGNvbnN0OwogCisgICAgdmlydHVhbCBib29sIGNhcmV0U2hvdWxkQmxpbmso
KSBjb25zdDsKKyAgICB2aXJ0dWFsIGRvdWJsZSBjYXJldEJsaW5rRnJlcXVlbmN5KCkgY29uc3Q7
CisKICAgICAvLyBTeXN0ZW0gZm9udHMuCiAgICAgdmlydHVhbCB2b2lkIHN5c3RlbUZvbnQoaW50
IHByb3BJZCwgRm9udERlc2NyaXB0aW9uJikgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRoZW1lLmggYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5o
CmluZGV4IDM5OWE3M2EuLmI4YTc2N2YgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclRoZW1lLmgKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuaApAQCAtMTE3
LDYgKzExNyw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgcGxhdGZvcm1Db2xvcnNEaWRDaGFuZ2Uo
KTsKIAorICAgIHZpcnR1YWwgZG91YmxlIGNhcmV0QmxpbmtGcmVxdWVuY3koKSBjb25zdCB7IHJl
dHVybiAwLjU7IH0KKwogICAgIC8vIFN5c3RlbSBmb250cy4KICAgICB2aXJ0dWFsIHZvaWQgc3lz
dGVtRm9udChpbnQgcHJvcElkLCBGb250RGVzY3JpcHRpb24mKSBjb25zdCA9IDA7CiAK
</data>
<flag name="review"
          id="7167"
          type_id="1"
          status="+"
          setter="aroben"
    />
          </attachment>
      

    </bug>

</bugzilla>