------=_Part_12286_7814492.1215595637968 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline Hello. The following patch adds two new modes to KDirOperator: a "tree view" mode, where you simply get a file tree, and a "detailed tree view" mode where you get a file tree and the normal extra columns (size, type, ...). As KDirOperatorDetailView -- where the "detailed view" mode is implemented -- already used a QTreeView, it's easy to turn it into a real tree, most of the code changed is for KDirOperator to be aware of the new modes and allowing change between them. The new modes are by default also shown on the KDirOperator context menu, but can easily disabled. This work is mainly directed at easily getting a file tree into Kate and Kdevelop. Ivo Anjo ------=_Part_12286_7814492.1215595637968 Content-Type: text/x-patch; name=add_tree_detailtree_to_kdiroperator.patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_fifq1q8f0 Content-Disposition: attachment; filename=add_tree_detailtree_to_kdiroperator.patch SW5kZXg6IGtmaWxlL2tkaXJvcGVyYXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0ga2ZpbGUva2Rpcm9w ZXJhdG9yLmNwcAkocmV2aXNpb24gODI5NTg0KQorKysga2ZpbGUva2Rpcm9wZXJhdG9yLmNwcAko d29ya2luZyBjb3B5KQpAQCAtMTgwLDEwICsxODAsMTQgQEAKICAgICB2b2lkIHRyaWdnZXJTb3J0 aW5nKCk7CiAKICAgICBzdGF0aWMgYm9vbCBpc1JlYWRhYmxlKGNvbnN0IEtVcmwgJnVybCk7Cisg ICAgCisgICAgS0ZpbGU6OkZpbGVWaWV3IGFsbFZpZXdzKCk7CiAKICAgICAvLyBwcml2YXRlIHNs b3RzCiAgICAgdm9pZCBfa19zbG90RGV0YWlsZWRWaWV3KCk7CiAgICAgdm9pZCBfa19zbG90U2lt cGxlVmlldygpOworICAgIHZvaWQgX2tfc2xvdFRyZWVWaWV3KCk7CisgICAgdm9pZCBfa19zbG90 RGV0YWlsZWRUcmVlVmlldygpOwogICAgIHZvaWQgX2tfc2xvdFRvZ2dsZUhpZGRlbihib29sKTsK ICAgICB2b2lkIF9rX3RvZ2dsZVByZXZpZXcoYm9vbCk7CiAgICAgdm9pZCBfa19zbG90U29ydEJ5 TmFtZSgpOwpAQCAtNTMzLDE4ICs1MzcsMzQgQEAKICAgICByZXR1cm4gZC0+YWN0aW9uQ29sbGVj dGlvbjsKIH0KIAorS0ZpbGU6OkZpbGVWaWV3IEtEaXJPcGVyYXRvcjo6UHJpdmF0ZTo6YWxsVmll d3MoKSB7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PEtGaWxlOjpGaWxlVmlldz4oS0ZpbGU6OlNp bXBsZSB8IEtGaWxlOjpEZXRhaWwgfCBLRmlsZTo6VHJlZSB8IEtGaWxlOjpEZXRhaWxUcmVlKTsK K30KKwogdm9pZCBLRGlyT3BlcmF0b3I6OlByaXZhdGU6Ol9rX3Nsb3REZXRhaWxlZFZpZXcoKQog ewotICAgIEtGaWxlOjpGaWxlVmlldyB2aWV3ID0gc3RhdGljX2Nhc3Q8S0ZpbGU6OkZpbGVWaWV3 Pigodmlld0tpbmQgJiB+S0ZpbGU6OlNpbXBsZSkgfCBLRmlsZTo6RGV0YWlsKTsKKyAgICBLRmls ZTo6RmlsZVZpZXcgdmlldyA9IHN0YXRpY19jYXN0PEtGaWxlOjpGaWxlVmlldz4oKHZpZXdLaW5k ICYgfmFsbFZpZXdzKCkpIHwgS0ZpbGU6OkRldGFpbCk7CiAgICAgcGFyZW50LT5zZXRWaWV3KHZp ZXcpOwogfQogCiB2b2lkIEtEaXJPcGVyYXRvcjo6UHJpdmF0ZTo6X2tfc2xvdFNpbXBsZVZpZXco KQogewotICAgIEtGaWxlOjpGaWxlVmlldyB2aWV3ID0gc3RhdGljX2Nhc3Q8S0ZpbGU6OkZpbGVW aWV3Pigodmlld0tpbmQgJiB+S0ZpbGU6OkRldGFpbCkgfCBLRmlsZTo6U2ltcGxlKTsKKyAgICBL RmlsZTo6RmlsZVZpZXcgdmlldyA9IHN0YXRpY19jYXN0PEtGaWxlOjpGaWxlVmlldz4oKHZpZXdL aW5kICYgfmFsbFZpZXdzKCkpIHwgS0ZpbGU6OlNpbXBsZSk7CiAgICAgcGFyZW50LT5zZXRWaWV3 KHZpZXcpOwogfQogCit2b2lkIEtEaXJPcGVyYXRvcjo6UHJpdmF0ZTo6X2tfc2xvdFRyZWVWaWV3 KCkKK3sKKyAgICBLRmlsZTo6RmlsZVZpZXcgdmlldyA9IHN0YXRpY19jYXN0PEtGaWxlOjpGaWxl Vmlldz4oKHZpZXdLaW5kICYgfmFsbFZpZXdzKCkpIHwgS0ZpbGU6OlRyZWUpOworICAgIHBhcmVu dC0+c2V0Vmlldyh2aWV3KTsKK30KKwordm9pZCBLRGlyT3BlcmF0b3I6OlByaXZhdGU6Ol9rX3Ns b3REZXRhaWxlZFRyZWVWaWV3KCkKK3sKKyAgICBLRmlsZTo6RmlsZVZpZXcgdmlldyA9IHN0YXRp Y19jYXN0PEtGaWxlOjpGaWxlVmlldz4oKHZpZXdLaW5kICYgfmFsbFZpZXdzKCkpIHwgS0ZpbGU6 OkRldGFpbFRyZWUpOworICAgIHBhcmVudC0+c2V0Vmlldyh2aWV3KTsKK30KKwogdm9pZCBLRGly T3BlcmF0b3I6OlByaXZhdGU6Ol9rX3Nsb3RUb2dnbGVIaWRkZW4oYm9vbCBzaG93KQogewogICAg IGRpckxpc3Rlci0+c2V0U2hvd2luZ0RvdEZpbGVzKHNob3cpOwpAQCAtMTI2Miw4ICsxMjgyLDkg QEAKIFFBYnN0cmFjdEl0ZW1WaWV3KiBLRGlyT3BlcmF0b3I6OmNyZWF0ZVZpZXcoUVdpZGdldCog cGFyZW50LCBLRmlsZTo6RmlsZVZpZXcgdmlld0tpbmQpCiB7CiAgICAgUUFic3RyYWN0SXRlbVZp ZXcgKml0ZW1WaWV3ID0gMDsKLSAgICBpZiAoS0ZpbGU6OmlzRGV0YWlsVmlldyh2aWV3S2luZCkp IHsKKyAgICBpZiAoS0ZpbGU6OmlzRGV0YWlsVmlldyh2aWV3S2luZCkgfHwgS0ZpbGU6OmlzVHJl ZVZpZXcodmlld0tpbmQpIHx8IEtGaWxlOjppc0RldGFpbFRyZWVWaWV3KHZpZXdLaW5kKSkgewog ICAgICAgICBLRGlyT3BlcmF0b3JEZXRhaWxWaWV3ICpkZXRhaWxWaWV3ID0gbmV3IEtEaXJPcGVy YXRvckRldGFpbFZpZXcocGFyZW50KTsKKyAgICAgICAgZGV0YWlsVmlldy0+c2V0Vmlld01vZGUo dmlld0tpbmQpOwogICAgICAgICBjb25uZWN0KGRldGFpbFZpZXctPmhlYWRlcigpLCBTSUdOQUwo c29ydEluZGljYXRvckNoYW5nZWQgKGludCwgUXQ6OlNvcnRPcmRlcikpLAogICAgICAgICAgICAg ICAgIHRoaXMsIFNMT1QoX2tfc3luY2hyb25pemVTb3J0aW5nU3RhdGUoaW50LCBRdDo6U29ydE9y ZGVyKSkpOwogICAgICAgICBpdGVtVmlldyA9IGRldGFpbFZpZXc7CkBAIC0xNjMxLDEwICsxNjUy LDIyIEBACiAgICAgZC0+YWN0aW9uQ29sbGVjdGlvbi0+YWRkQWN0aW9uKCJkZXRhaWxlZCB2aWV3 IiwgZGV0YWlsZWRBY3Rpb24pOwogICAgIGRldGFpbGVkQWN0aW9uLT5zZXRJY29uKEtJY29uKFFM YXRpbjFTdHJpbmcoInZpZXctbGlzdC1kZXRhaWxzIikpKTsKICAgICBjb25uZWN0KGRldGFpbGVk QWN0aW9uLCBTSUdOQUwodHJpZ2dlcmVkICgpKSwgU0xPVChfa19zbG90RGV0YWlsZWRWaWV3KCkp KTsKKyAgICAKKyAgICBLVG9nZ2xlQWN0aW9uICp0cmVlQWN0aW9uID0gbmV3IEtUb2dnbGVBY3Rp b24oaTE4bigiVHJlZSBWaWV3IiksIHRoaXMpOworICAgIGQtPmFjdGlvbkNvbGxlY3Rpb24tPmFk ZEFjdGlvbigidHJlZSB2aWV3IiwgdHJlZUFjdGlvbik7CisgICAgdHJlZUFjdGlvbi0+c2V0SWNv bihLSWNvbihRTGF0aW4xU3RyaW5nKCJ2aWV3LWxpc3QtdHJlZSIpKSk7CisgICAgY29ubmVjdCh0 cmVlQWN0aW9uLCBTSUdOQUwodHJpZ2dlcmVkICgpKSwgU0xPVChfa19zbG90VHJlZVZpZXcoKSkp OworICAgIAorICAgIEtUb2dnbGVBY3Rpb24gKmRldGFpbGVkVHJlZUFjdGlvbiA9IG5ldyBLVG9n Z2xlQWN0aW9uKGkxOG4oIkRldGFpbGVkIFRyZWUgVmlldyIpLCB0aGlzKTsKKyAgICBkLT5hY3Rp b25Db2xsZWN0aW9uLT5hZGRBY3Rpb24oImRldGFpbGVkIHRyZWUgdmlldyIsIGRldGFpbGVkVHJl ZUFjdGlvbik7CisgICAgZGV0YWlsZWRUcmVlQWN0aW9uLT5zZXRJY29uKEtJY29uKFFMYXRpbjFT dHJpbmcoInZpZXctbGlzdC10cmVlIikpKTsKKyAgICBjb25uZWN0KGRldGFpbGVkVHJlZUFjdGlv biwgU0lHTkFMKHRyaWdnZXJlZCAoKSksIFNMT1QoX2tfc2xvdERldGFpbGVkVHJlZVZpZXcoKSkp OwogCiAgICAgUUFjdGlvbkdyb3VwKiB2aWV3R3JvdXAgPSBuZXcgUUFjdGlvbkdyb3VwKHRoaXMp OwogICAgIHNob3J0QWN0aW9uLT5zZXRBY3Rpb25Hcm91cCh2aWV3R3JvdXApOwogICAgIGRldGFp bGVkQWN0aW9uLT5zZXRBY3Rpb25Hcm91cCh2aWV3R3JvdXApOworICAgIHRyZWVBY3Rpb24tPnNl dEFjdGlvbkdyb3VwKHZpZXdHcm91cCk7CisgICAgZGV0YWlsZWRUcmVlQWN0aW9uLT5zZXRBY3Rp b25Hcm91cCh2aWV3R3JvdXApOwogCiAgICAgS1RvZ2dsZUFjdGlvbiAqc2hvd0hpZGRlbkFjdGlv biA9IG5ldyBLVG9nZ2xlQWN0aW9uKGkxOG4oIlNob3cgSGlkZGVuIEZpbGVzIiksIHRoaXMpOwog ICAgIGQtPmFjdGlvbkNvbGxlY3Rpb24tPmFkZEFjdGlvbigic2hvdyBoaWRkZW4iLCBzaG93SGlk ZGVuQWN0aW9uKTsKQEAgLTE2NTcsNiArMTY5MCw5IEBACiAgICAgZC0+YWN0aW9uQ29sbGVjdGlv bi0+YWRkQWN0aW9uKCJ2aWV3IG1lbnUiLCB2aWV3TWVudSk7CiAgICAgdmlld01lbnUtPmFkZEFj dGlvbihzaG9ydEFjdGlvbik7CiAgICAgdmlld01lbnUtPmFkZEFjdGlvbihkZXRhaWxlZEFjdGlv bik7CisgICAgLy8gQ29tbWVudCBmb2xsb3dpbmcgbGluZXMgdG8gaGlkZSB0aGUgZXh0cmEgdHdv IG1vZGVzCisgICAgdmlld01lbnUtPmFkZEFjdGlvbih0cmVlQWN0aW9uKTsKKyAgICB2aWV3TWVu dS0+YWRkQWN0aW9uKGRldGFpbGVkVHJlZUFjdGlvbik7CiAgICAgLy8gVE9ETzogUUFic3RyYWN0 SXRlbVZpZXcgZG9lcyBub3Qgb2ZmZXIgYW4gYWN0aW9uIGNvbGxlY3Rpb24uIFByb3ZpZGUKICAg ICAvLyBhbiBpbnRlcmZhY2UgdG8gYWRkIGEgY3VzdG9tIGFjdGlvbiBjb2xsZWN0aW9uLgogCkBA IC0xNzQ4LDYgKzE3ODQsOCBAQAogCiAgICAgZC0+YWN0aW9uQ29sbGVjdGlvbi0+YWN0aW9uKCJz aG9ydCB2aWV3IiktPnNldENoZWNrZWQoS0ZpbGU6OmlzU2ltcGxlVmlldyhmdikpOwogICAgIGQt PmFjdGlvbkNvbGxlY3Rpb24tPmFjdGlvbigiZGV0YWlsZWQgdmlldyIpLT5zZXRDaGVja2VkKEtG aWxlOjppc0RldGFpbFZpZXcoZnYpKTsKKyAgICBkLT5hY3Rpb25Db2xsZWN0aW9uLT5hY3Rpb24o InRyZWUgdmlldyIpLT5zZXRDaGVja2VkKEtGaWxlOjppc1RyZWVWaWV3KGZ2KSk7CisgICAgZC0+ YWN0aW9uQ29sbGVjdGlvbi0+YWN0aW9uKCJkZXRhaWxlZCB0cmVlIHZpZXciKS0+c2V0Q2hlY2tl ZChLRmlsZTo6aXNEZXRhaWxUcmVlVmlldyhmdikpOwogfQogCiB2b2lkIEtEaXJPcGVyYXRvcjo6 cmVhZENvbmZpZyhjb25zdCBLQ29uZmlnR3JvdXAmIGNvbmZpZ0dyb3VwKQpJbmRleDoga2ZpbGUv a2Rpcm9wZXJhdG9yZGV0YWlsdmlld19wLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0ga2ZpbGUva2Rpcm9wZXJh dG9yZGV0YWlsdmlld19wLmgJKHJldmlzaW9uIDgyOTU4NCkKKysrIGtmaWxlL2tkaXJvcGVyYXRv cmRldGFpbHZpZXdfcC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw2ICsyMSw4IEBACiAKICNpbmNs dWRlIDxRdEd1aS9RVHJlZVZpZXc+CiAKKyNpbmNsdWRlIDxrZmlsZS5oPgorCiBjbGFzcyBRQWJz dHJhY3RJdGVtTW9kZWw7CiAKIC8qKgpAQCAtMzYsNiArMzgsMTEgQEAKICAgICB2aXJ0dWFsIH5L RGlyT3BlcmF0b3JEZXRhaWxWaWV3KCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE1vZGVsKFFBYnN0 cmFjdEl0ZW1Nb2RlbCAqbW9kZWwpOwogCisgICAgLyoqCisgICAgKiBEaXNwbGF5cyBlaXRoZXIg RGV0YWlsLCBUcmVlIG9yIERldGFpbFRyZWUgbW9kZXMuCisgICAgKi8KKyAgICB2aXJ0dWFsIGJv b2wgc2V0Vmlld01vZGUoS0ZpbGU6OkZpbGVWaWV3IHZpZXdNb2RlKTsKKwogcHJvdGVjdGVkOgog ICAgIHZpcnR1YWwgYm9vbCBldmVudChRRXZlbnQgKmV2ZW50KTsKICAgICB2aXJ0dWFsIHZvaWQg ZHJhZ0VudGVyRXZlbnQoUURyYWdFbnRlckV2ZW50ICpldmVudCk7CkBAIC00OSw2ICs1Niw3IEBA CiAKIHByaXZhdGU6CiAgICAgYm9vbCBtX3Jlc2l6ZUNvbHVtbnM7CisgICAgYm9vbCBtX2hpZGVE ZXRhaWxDb2x1bW5zOwogfTsKIAogI2VuZGlmCkluZGV4OiBrZmlsZS9rZGlyb3BlcmF0b3IuaAo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09Ci0tLSBrZmlsZS9rZGlyb3BlcmF0b3IuaAkocmV2aXNpb24gODI5NTg0KQorKysg a2ZpbGUva2Rpcm9wZXJhdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTc2Myw2ICs3NjMsOCBAQAog CiAgICAgUV9QUklWQVRFX1NMT1QoIGQsIHZvaWQgX2tfc2xvdERldGFpbGVkVmlldygpICkKICAg ICBRX1BSSVZBVEVfU0xPVCggZCwgdm9pZCBfa19zbG90U2ltcGxlVmlldygpICkKKyAgICBRX1BS SVZBVEVfU0xPVCggZCwgdm9pZCBfa19zbG90VHJlZVZpZXcoKSApCisgICAgUV9QUklWQVRFX1NM T1QoIGQsIHZvaWQgX2tfc2xvdERldGFpbGVkVHJlZVZpZXcoKSApCiAgICAgUV9QUklWQVRFX1NM T1QoIGQsIHZvaWQgX2tfc2xvdFRvZ2dsZUhpZGRlbihib29sKSApCiAgICAgUV9QUklWQVRFX1NM T1QoIGQsIHZvaWQgX2tfdG9nZ2xlUHJldmlldyhib29sKSApCiAgICAgUV9QUklWQVRFX1NMT1Qo IGQsIHZvaWQgX2tfc2xvdFNvcnRCeU5hbWUoKSApCkluZGV4OiBrZmlsZS9rZGlyb3BlcmF0b3Jk ZXRhaWx2aWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBrZmlsZS9rZGlyb3BlcmF0b3JkZXRhaWx2aWV3 LmNwcAkocmV2aXNpb24gODI5NTg0KQorKysga2ZpbGUva2Rpcm9wZXJhdG9yZGV0YWlsdmlldy5j cHAJKHdvcmtpbmcgY29weSkKQEAgLTIwLDYgKzIwLDcgQEAKIAogI2luY2x1ZGUgPGtkaXJsaXN0 ZXIuaD4KICNpbmNsdWRlIDxrZGlybW9kZWwuaD4KKyNpbmNsdWRlIDxrZGVidWcuaD4KIAogI2lu Y2x1ZGUgPFF0Q29yZS9RRXZlbnQ+CiAjaW5jbHVkZSA8UXRDb3JlL1FUaW1lcj4KQEAgLTMyLDcg KzMzLDcgQEAKIAogS0Rpck9wZXJhdG9yRGV0YWlsVmlldzo6S0Rpck9wZXJhdG9yRGV0YWlsVmll dyhRV2lkZ2V0ICpwYXJlbnQpIDoKICAgICBRVHJlZVZpZXcocGFyZW50KSwKLSAgICBtX3Jlc2l6 ZUNvbHVtbnModHJ1ZSkKKyAgICBtX3Jlc2l6ZUNvbHVtbnModHJ1ZSksIG1faGlkZURldGFpbENv bHVtbnMoZmFsc2UpCiB7CiAgICAgc2V0Um9vdElzRGVjb3JhdGVkKGZhbHNlKTsKICAgICBzZXRT b3J0aW5nRW5hYmxlZCh0cnVlKTsKQEAgLTY0LDYgKzY1LDMxIEBACiAgICAgUVRyZWVWaWV3Ojpz ZXRNb2RlbChtb2RlbCk7CiB9CiAKK2Jvb2wgS0Rpck9wZXJhdG9yRGV0YWlsVmlldzo6c2V0Vmll d01vZGUoS0ZpbGU6OkZpbGVWaWV3IHZpZXdNb2RlKQoreworICAgIGJvb2wgdHJlZSA9IGZhbHNl OworICAgIAorICAgIGlmIChLRmlsZTo6aXNEZXRhaWxWaWV3KHZpZXdNb2RlKSkgeworICAgICAg ICBtX2hpZGVEZXRhaWxDb2x1bW5zID0gZmFsc2U7CisgICAgICAgIGtEZWJ1ZygpIDw8ICJkZXRh aWwgdmlldyAoRE8pIjsKKyAgICB9IGVsc2UgaWYgKEtGaWxlOjppc1RyZWVWaWV3KHZpZXdNb2Rl KSkgeworICAgICAgICBtX2hpZGVEZXRhaWxDb2x1bW5zID0gdHJ1ZTsKKyAgICAgICAgdHJlZSA9 IHRydWU7CisgICAgICAgIGtEZWJ1ZygpIDw8ICJ0cmVlIHZpZXcgKERPKSI7CisgICAgfSBlbHNl IGlmIChLRmlsZTo6aXNEZXRhaWxUcmVlVmlldyh2aWV3TW9kZSkpIHsKKyAgICAgICAgbV9oaWRl RGV0YWlsQ29sdW1ucyA9IGZhbHNlOworICAgICAgICB0cmVlID0gdHJ1ZTsKKyAgICAgICAga0Rl YnVnKCkgPDwgImRldGFpbCB0cmVlIHZpZXcgKERPKSI7CisgICAgfSBlbHNlIHsKKyAgICAgICAg cmV0dXJuIGZhbHNlOworICAgIH0KKyAgICAKKyAgICBzZXRSb290SXNEZWNvcmF0ZWQodHJlZSk7 CisgICAgc2V0SXRlbXNFeHBhbmRhYmxlKHRyZWUpOworICAgIAorICAgIHJldHVybiB0cnVlOwor fQorCiBib29sIEtEaXJPcGVyYXRvckRldGFpbFZpZXc6OmV2ZW50KFFFdmVudCAqZXZlbnQpCiB7 CiAgICAgaWYgKGV2ZW50LT50eXBlKCkgPT0gUUV2ZW50OjpQb2xpc2gpIHsKQEAgLTcyLDYgKzk4 LDEwIEBACiAgICAgICAgIGhlYWRlclZpZXctPnNldFN0cmV0Y2hMYXN0U2VjdGlvbihmYWxzZSk7 CiAgICAgICAgIGhlYWRlclZpZXctPnNldE1vdmFibGUoZmFsc2UpOwogCisgICAgICAgIHNldENv bHVtbkhpZGRlbihLRGlyTW9kZWw6OlNpemUsIG1faGlkZURldGFpbENvbHVtbnMpOworICAgICAg ICBzZXRDb2x1bW5IaWRkZW4oS0Rpck1vZGVsOjpNb2RpZmllZFRpbWUsIG1faGlkZURldGFpbENv bHVtbnMpOworICAgICAgICBzZXRDb2x1bW5IaWRkZW4oS0Rpck1vZGVsOjpUeXBlLCBtX2hpZGVE ZXRhaWxDb2x1bW5zKTsKKwogICAgICAgICBoaWRlQ29sdW1uKEtEaXJNb2RlbDo6UGVybWlzc2lv bnMpOwogICAgICAgICBoaWRlQ29sdW1uKEtEaXJNb2RlbDo6T3duZXIpOwogICAgICAgICBoaWRl Q29sdW1uKEtEaXJNb2RlbDo6R3JvdXApOwpAQCAtMTQ1LDMgKzE3NSw1IEBACiB7CiAgICAgbV9y ZXNpemVDb2x1bW5zID0gZmFsc2U7CiB9CisKKy8vIGthdGU6IHNwYWNlLWluZGVudCBvbjsgaW5k ZW50LXdpZHRoIDQ7IHJlcGxhY2UtdGFicyBvbjsKSW5kZXg6IGtpby9rZmlsZS9rZmlsZS5oCj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tIGtpby9rZmlsZS9rZmlsZS5oCShyZXZpc2lvbiA4Mjk1ODQpCisrKyBraW8v a2ZpbGUva2ZpbGUuaAkod29ya2luZyBjb3B5KQpAQCAtNTgsNiArNTgsOCBAQAogICAgICAgICBT ZXBhcmF0ZURpcnMgICAgPSA0LAogICAgICAgICBQcmV2aWV3Q29udGVudHMgPSA4LAogICAgICAg ICBQcmV2aWV3SW5mbyAgICAgPSAxNiwKKyAgICAgICAgVHJlZSAgICAgICAgICAgID0gMzIsCisg ICAgICAgIERldGFpbFRyZWUgICAgICA9IDY0LAogICAgICAgICBGaWxlVmlld01heCAgICAgPSA2 NTUzNgogICAgIH07CiAKQEAgLTEwMCw2ICsxMDIsMTAgQEAKICAgICBzdGF0aWMgYm9vbCBpc1By ZXZpZXdDb250ZW50cyggY29uc3QgRmlsZVZpZXcmIHZpZXcgKTsgCiAKICAgICBzdGF0aWMgYm9v bCBpc1ByZXZpZXdJbmZvKCBjb25zdCBGaWxlVmlldyYgdmlldyApOworICAgIAorICAgIHN0YXRp YyBib29sIGlzVHJlZVZpZXcoIGNvbnN0IEZpbGVWaWV3JiB2aWV3ICk7CisgICAgCisgICAgc3Rh dGljIGJvb2wgaXNEZXRhaWxUcmVlVmlldyggY29uc3QgRmlsZVZpZXcmIHZpZXcgKTsKIAogcHJp dmF0ZToKICAgICBLRmlsZSgpOyAvLyBmb3JiaWRkZW4KSW5kZXg6IGtpby9rZmlsZS9rZmlsZS5j cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQotLS0ga2lvL2tmaWxlL2tmaWxlLmNwcAkocmV2aXNpb24gODI5NTg0KQor Kysga2lvL2tmaWxlL2tmaWxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODAsNCArODAsMTQgQEAK ICAgICByZXR1cm4gKHZpZXcgJiBQcmV2aWV3SW5mbykgPT0gUHJldmlld0luZm87CiB9CiAKK2Jv b2wgS0ZpbGU6OmlzVHJlZVZpZXcoIGNvbnN0IEZpbGVWaWV3JiB2aWV3ICkKK3sKKyAgICByZXR1 cm4gKHZpZXcgJiBUcmVlKSA9PSBUcmVlOworfQorCitib29sIEtGaWxlOjppc0RldGFpbFRyZWVW aWV3KCBjb25zdCBGaWxlVmlldyYgdmlldyApCit7CisgICAgcmV0dXJuICh2aWV3ICYgRGV0YWls VHJlZSkgPT0gRGV0YWlsVHJlZTsKK30KKwogI2luY2x1ZGUgImtmaWxlLm1vYyIK ------=_Part_12286_7814492.1215595637968--