<?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>114891</bug_id>
          
          <creation_ts>2013-04-19 15:42:33 -0700</creation_ts>
          <short_desc>Battery API won&apos;t return updated battery status until client calls didChangeBatteryStatus</short_desc>
          <delta_ts>2013-04-24 13:37:36 -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>WebKit API</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter>otcheung</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kihong.kwon</cc>
    
    <cc>rwlbuis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>878658</commentid>
    <comment_count>0</comment_count>
    <who name="">otcheung</who>
    <bug_when>2013-04-19 15:42:33 -0700</bug_when>
    <thetext>The battery status object in BatteryManager won&apos;t get updated until the client calls didChangeBatteryStatus in the controller. If we have a web page that only calls webkitBattery.charge() and there&apos;s no update from the client between the creation of addListener(BatteryManager) and the next didChangeBatteryStatus, the BatteryManager will always return the default value because m_batteryStatus is always null.

We need to update the manager when we attach it to the controller, and update all existing managers when the controller receives it&apos;s first battery status object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>878663</commentid>
    <comment_count>1</comment_count>
      <attachid>198918</attachid>
    <who name="">otcheung</who>
    <bug_when>2013-04-19 15:57:59 -0700</bug_when>
    <thetext>Created attachment 198918
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>879192</commentid>
    <comment_count>2</comment_count>
    <who name="">otcheung</who>
    <bug_when>2013-04-22 09:02:51 -0700</bug_when>
    <thetext>Hi Kihong, would you be free to take a look at the small fix I made to the battery module?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>879766</commentid>
    <comment_count>3</comment_count>
    <who name="Kihong Kwon">kihong.kwon</who>
    <bug_when>2013-04-23 02:55:44 -0700</bug_when>
    <thetext>I couldn&apos;t see any problem with this and IMO, this is good point. :)
But, as you may know, updateBatteryStatus is only for chromium.
Therefore if you don&apos;t have a plan to use it, this patch is meaningless.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>880768</commentid>
    <comment_count>4</comment_count>
      <attachid>198918</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2013-04-24 13:09:56 -0700</bug_when>
    <thetext>Comment on attachment 198918
Patch

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>880769</commentid>
    <comment_count>5</comment_count>
    <who name="">otcheung</who>
    <bug_when>2013-04-24 13:10:53 -0700</bug_when>
    <thetext>thanks for your help Kihong!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>880773</commentid>
    <comment_count>6</comment_count>
      <attachid>198918</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-24 13:37:34 -0700</bug_when>
    <thetext>Comment on attachment 198918
Patch

Clearing flags on attachment: 198918

Committed r149063: &lt;http://trac.webkit.org/changeset/149063&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>880774</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-24 13:37:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>198918</attachid>
            <date>2013-04-19 15:57:59 -0700</date>
            <delta_ts>2013-04-24 13:37:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114891-20130419185729.patch</filename>
            <type>text/plain</type>
            <size>4181</size>
            <attacher>otcheung</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4Nzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQzNjZlOTA1Y2Y5NWY3
M2NjYjM4MzBiYjg1Y2JlZmMzZWU3OWFhMS4uNzEyZDI3Y2U0OTI0YzZiYThkYjJjZmU2OTRkNDgx
NTBlZWE1ZDU1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEzLTA0LTE5ICBPdHRv
IERlcmVrIENoZXVuZyAgPG90Y2hldW5nQHJpbS5jb20+CisKKyAgICAgICAgQmF0dGVyeSBBUEkg
d29uJ3QgcmV0dXJuIHVwZGF0ZWQgYmF0dGVyeSBzdGF0dXMgdW50aWwgY2xpZW50IGNhbGxzIGRp
ZENoYW5nZUJhdHRlcnlTdGF0dXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExNDg5MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFRoZSBCYXR0ZXJ5U3RhdHVzIG9iamVjdCBpbiBCYXR0ZXJ5TWFuYWdlciB3
b24ndCBnZXQgdXBkYXRlZCB1bnRpbCBCYXR0ZXJ5Q2xpZW50IGNhbGxzCisgICAgICAgIGRpZENo
YW5nZUJhdHRlcnlTdGF0dXMgaW4gQmF0dGVyeUNvbnRyb2xsZXIuIEFueSBhdHRlbXB0cyB0byBj
YWxsIHdlYmtpdEJhdHRlcnkuY2hhcmdlZCgpCisgICAgICAgIG9yIG90aGVyIGdldCBmdW5jdGlv
bnMgd2lsbCBhbHdheXMgcmV0dXJuIHRoZSBkZWZhdWx0IHZhbHVlcyB1bnRpbCB0aGUgbmV4dCBi
YXR0ZXJ5IHN0YXR1cworICAgICAgICBjaGFuZ2Ugb2JqZWN0IGdldHMgcGFzc2VkIHRvIHRoZSBj
b250cm9sbGVyLgorCisgICAgICAgIFdlIG5lZWQgdG8gdXBkYXRlIHRoZSBtYW5hZ2VyIHdoZW4g
d2UgYXR0YWNoIGl0IHRvIHRoZSBjb250cm9sbGVyLCBhbmQgdXBkYXRlIGFsbAorICAgICAgICBl
eGlzdGluZyBtYW5hZ2VycyB3aGVuIHRoZSBjb250cm9sbGVyIHJlY2VpdmVzIGl0J3MgZmlyc3Qg
YmF0dGVyeSBzdGF0dXMgb2JqZWN0LgorCisgICAgICAgICogTW9kdWxlcy9iYXR0ZXJ5L0JhdHRl
cnlDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhdHRlcnlDb250cm9sbGVyOjph
ZGRMaXN0ZW5lcik6CisgICAgICAgIChXZWJDb3JlOjpCYXR0ZXJ5Q29udHJvbGxlcjo6dXBkYXRl
QmF0dGVyeVN0YXR1cyk6CisgICAgICAgICogTW9kdWxlcy9iYXR0ZXJ5L0JhdHRlcnlNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhdHRlcnlNYW5hZ2VyOjpkaWRDaGFuZ2VCYXR0ZXJ5
U3RhdHVzKToKKyAgICAgICAgKFdlYkNvcmU6OkJhdHRlcnlNYW5hZ2VyOjp1cGRhdGVCYXR0ZXJ5
U3RhdHVzKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIE1vZHVsZXMvYmF0dGVyeS9C
YXR0ZXJ5TWFuYWdlci5oOgorICAgICAgICAoQmF0dGVyeU1hbmFnZXIpOgorCiAyMDEzLTA0LTE5
ICBCZW5qYW1pbiBQb3VsYWluICA8YmVuamFtaW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBVc2Ug
VmVjdG9yIGluc3RlYWQgb2YgU3RyaW5nQnVpbGRlciBmb3IgQ1NTUHJlbG9hZFNjYW5uZXIncyBi
dWZmZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2JhdHRlcnkvQmF0dGVy
eUNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9iYXR0ZXJ5L0JhdHRlcnlD
b250cm9sbGVyLmNwcAppbmRleCA0ZTJjYzJhMjZlMDBhMTY2MmIxYTlkM2NlM2YyMzcxMzk4NWM0
OWYwLi5mMTA4ODNhMTQ2N2FmOTU2ZTk0OWU5ODNmMTI4NGEzZDUxZjczOTU5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2JhdHRlcnkvQmF0dGVyeUNvbnRyb2xsZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYmF0dGVyeS9CYXR0ZXJ5Q29udHJvbGxlci5jcHAK
QEAgLTUxLDYgKzUxLDkgQEAgdm9pZCBCYXR0ZXJ5Q29udHJvbGxlcjo6YWRkTGlzdGVuZXIoQmF0
dGVyeU1hbmFnZXIqIGJhdHRlcnlNYW5hZ2VyKQogewogICAgIG1fbGlzdGVuZXJzLmFwcGVuZChi
YXR0ZXJ5TWFuYWdlcik7CiAgICAgbV9jbGllbnQtPnN0YXJ0VXBkYXRpbmcoKTsKKworICAgIGlm
IChtX2JhdHRlcnlTdGF0dXMpCisgICAgICAgIGJhdHRlcnlNYW5hZ2VyLT51cGRhdGVCYXR0ZXJ5
U3RhdHVzKG1fYmF0dGVyeVN0YXR1cyk7CiB9CiAKIHZvaWQgQmF0dGVyeUNvbnRyb2xsZXI6OnJl
bW92ZUxpc3RlbmVyKEJhdHRlcnlNYW5hZ2VyKiBiYXR0ZXJ5TWFuYWdlcikKQEAgLTc2LDYgKzc5
LDkgQEAgdm9pZCBCYXR0ZXJ5Q29udHJvbGxlcjo6dXBkYXRlQmF0dGVyeVN0YXR1cyhQYXNzUmVm
UHRyPEJhdHRlcnlTdGF0dXM+IGJhdHRlcnlTdGEKIAogICAgICAgICBpZiAobV9iYXR0ZXJ5U3Rh
dHVzLT5sZXZlbCgpICE9IHN0YXR1cy0+bGV2ZWwoKSkKICAgICAgICAgICAgIGRpZENoYW5nZUJh
dHRlcnlTdGF0dXMoV2ViQ29yZTo6ZXZlbnROYW1lcygpLmxldmVsY2hhbmdlRXZlbnQsIHN0YXR1
cyk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZm9yIChMaXN0ZW5lclZlY3Rvcjo6aXRlcmF0b3Ig
aXQgPSBtX2xpc3RlbmVycy5iZWdpbigpOyBpdCAhPSBtX2xpc3RlbmVycy5lbmQoKTsgKytpdCkK
KyAgICAgICAgICAgICgqaXQpLT51cGRhdGVCYXR0ZXJ5U3RhdHVzKHN0YXR1cyk7CiAgICAgfQog
CiAgICAgbV9iYXR0ZXJ5U3RhdHVzID0gc3RhdHVzLnJlbGVhc2UoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvYmF0dGVyeS9CYXR0ZXJ5TWFuYWdlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2JhdHRlcnkvQmF0dGVyeU1hbmFnZXIuY3BwCmluZGV4IGQ2YjBhMDhm
YjIwODc5NDU5NDkyMzMzNmNlMWFhZWRjNjY2NzJhY2EuLmY2MzdiNTI0ZjZkY2U4YzQ0MTM1ZGY4
NmY4MTAzNDMwY2RiYjFjNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYmF0
dGVyeS9CYXR0ZXJ5TWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9iYXR0
ZXJ5L0JhdHRlcnlNYW5hZ2VyLmNwcApAQCAtNzksMTAgKzc5LDE1IEBAIGRvdWJsZSBCYXR0ZXJ5
TWFuYWdlcjo6bGV2ZWwoKQogCiB2b2lkIEJhdHRlcnlNYW5hZ2VyOjpkaWRDaGFuZ2VCYXR0ZXJ5
U3RhdHVzKFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50LCBQYXNzUmVmUHRyPEJhdHRlcnlTdGF0dXM+
IGJhdHRlcnlTdGF0dXMpCiB7Ci0gICAgbV9iYXR0ZXJ5U3RhdHVzID0gYmF0dGVyeVN0YXR1czsK
KyAgICB1cGRhdGVCYXR0ZXJ5U3RhdHVzKGJhdHRlcnlTdGF0dXMpOwogICAgIGRpc3BhdGNoRXZl
bnQoZXZlbnQpOwogfQogCit2b2lkIEJhdHRlcnlNYW5hZ2VyOjp1cGRhdGVCYXR0ZXJ5U3RhdHVz
KFBhc3NSZWZQdHI8QmF0dGVyeVN0YXR1cz4gYmF0dGVyeVN0YXR1cykKK3sKKyAgICBtX2JhdHRl
cnlTdGF0dXMgPSBiYXR0ZXJ5U3RhdHVzOworfQorCiB2b2lkIEJhdHRlcnlNYW5hZ2VyOjpzdXNw
ZW5kKFJlYXNvbkZvclN1c3BlbnNpb24pCiB7CiAgICAgaWYgKG1fYmF0dGVyeUNvbnRyb2xsZXIp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2JhdHRlcnkvQmF0dGVyeU1hbmFn
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYmF0dGVyeS9CYXR0ZXJ5TWFuYWdlci5oCmlu
ZGV4IGIyNDkzOWNiMjU0ZTU2YWE3ZjNiMDgyNTgxMmFlM2JlY2EwNDA0OTUuLmNiZjViNjY1Y2M1
NTQxNDk2YzM2NTAwNGU0YzIzZDU3YzE4MTM4Y2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvYmF0dGVyeS9CYXR0ZXJ5TWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvYmF0dGVyeS9CYXR0ZXJ5TWFuYWdlci5oCkBAIC01Miw2ICs1Miw3IEBAIHB1YmxpYzoK
ICAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGxldmVsY2hhbmdlKTsKIAogICAg
IHZvaWQgZGlkQ2hhbmdlQmF0dGVyeVN0YXR1cyhQYXNzUmVmUHRyPEV2ZW50PiwgUGFzc1JlZlB0
cjxCYXR0ZXJ5U3RhdHVzPik7CisgICAgdm9pZCB1cGRhdGVCYXR0ZXJ5U3RhdHVzKFBhc3NSZWZQ
dHI8QmF0dGVyeVN0YXR1cz4pOwogICAgIHZvaWQgYmF0dGVyeUNvbnRyb2xsZXJEZXN0cm95ZWQo
KSB7IG1fYmF0dGVyeUNvbnRyb2xsZXIgPSAwOyB9CiAKICAgICB1c2luZyBSZWZDb3VudGVkPEJh
dHRlcnlNYW5hZ2VyPjo6cmVmOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>