summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJay Freeman (saurik) <saurik@saurik.com>2008-12-17 07:15:36 +0000
committerJay Freeman (saurik) <saurik@saurik.com>2010-09-30 07:09:21 +0000
commit9dd60d81d336284c6d96d093b6beb4170c6a73c8 (patch)
tree507fdf0d2bf6e80287e6f5f4d3df0f7c5d6dd2fb
parentad5d065e7ddce3624a386d97074adea63fe48ca9 (diff)
Various interface cleanups.
-rwxr-xr-xCydia.app/Test1
-rw-r--r--Cydia.app/menes/menes.js45
-rw-r--r--Cydia.app/menes/style.css25
-rw-r--r--Cydia.app/package.html1
-rw-r--r--Cydia.app/storage.html96
-rw-r--r--Cydia.mm20
6 files changed, 108 insertions, 80 deletions
diff --git a/Cydia.app/Test b/Cydia.app/Test
index 5bfd090..c7df4e8 100755
--- a/Cydia.app/Test
+++ b/Cydia.app/Test
@@ -4,5 +4,6 @@ set -e
rsync -SPaz --copy-links saurik@carrier.saurik.com:menes/cydia/cydia_iphoneos-arm.deb .
dpkg -i cydia_iphoneos-arm.deb
touch /tmp/cydia.log
+chown mobile.mobile /tmp/cydia.log
openURL "${1-cydia://}"
exec tail /tmp/cydia.log -fn0
diff --git a/Cydia.app/menes/menes.js b/Cydia.app/menes/menes.js
index 70c5c47..2ca5d7d 100644
--- a/Cydia.app/menes/menes.js
+++ b/Cydia.app/menes/menes.js
@@ -190,19 +190,46 @@ $.prototype = {
});
},
- append: function (html) {
+ append: function (children) {
+ if ($.type(children) == "string")
+ $.each(this, function (node) {
+ var doc = $.document(node);
+
+ // XXX: implement wrapper system
+ var div = doc.createElement("div");
+ div.innerHTML = children;
+
+ while (div.childNodes.length != 0) {
+ var child = div.childNodes[0];
+ node.appendChild(child);
+ }
+ });
+ else
+ $.each(this, function (node) {
+ $.each(children, function (child) {
+ node.appendChild(child);
+ });
+ });
+ },
+
+ xpath: function (expression) {
+ var value = $([]);
+
$.each(this, function (node) {
var doc = $.document(node);
+ var results = doc.evaluate(expression, node, null, XPathResult.ANY_TYPE, null);
+ var result;
+ while (result = results.iterateNext())
+ value.add([result]);
+ });
- // XXX: implement wrapper system
- var div = doc.createElement("div");
- div.innerHTML = html;
+ return value;
+ },
- while (div.childNodes.length != 0) {
- var child = div.childNodes[0];
- node.appendChild(child);
- }
- });
+ clone: function (deep) {
+ return $($.map(this, function (node) {
+ return node.cloneNode(deep);
+ }));
},
descendants: function (expression) {
diff --git a/Cydia.app/menes/style.css b/Cydia.app/menes/style.css
index b067458..0397b5e 100644
--- a/Cydia.app/menes/style.css
+++ b/Cydia.app/menes/style.css
@@ -55,6 +55,8 @@
-webkit-border-radius: 0;
box-sizing: border-box;
-moz-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
font-family: inherit;
font-size: 100%;
font-style: inherit;
@@ -62,9 +64,14 @@
margin: 0;
outline: 0;
padding: 0;
+ text-decoration: none;
vertical-align: baseline;
}
+a {
+ color: inherit;
+}
+
sup {
font-size: smaller;
margin-top: -6px;
@@ -98,13 +105,8 @@ dialog > panel {
}
a {
- color: inherit;
- text-decoration: none;
- text-underline-style: dotted;
-}
-
-a {
color: blue;
+ text-underline-style: dotted;
}
strong {
@@ -241,13 +243,18 @@ fieldset > div img.icon {
}
panel > block > p,
-fieldset > div > p {
+fieldset > div > p,
+fieldset > div > ul {
margin: 11px 0;
- text-align: center;
}
fieldset > div > ul {
- margin-left: -20px;
+ margin-left: 13px;
+}
+
+panel > block > p,
+fieldset > div > p {
+ text-align: center;
}
fieldset > div > p:first-child,
diff --git a/Cydia.app/package.html b/Cydia.app/package.html
index 2b1aca9..09efc40 100644
--- a/Cydia.app/package.html
+++ b/Cydia.app/package.html
@@ -199,7 +199,6 @@
</a>
</fieldset>
-<label class="warnings">Warnings</label>
<fieldset class="warnings" id="warnings">
<div id="warning">
<img class="icon" src="warning.png"/>
diff --git a/Cydia.app/storage.html b/Cydia.app/storage.html
index bd208f9..e2347b9 100644
--- a/Cydia.app/storage.html
+++ b/Cydia.app/storage.html
@@ -27,27 +27,23 @@
}
a.giant-button {
+ background-color: rgba(0, 0, 0, 0.15);
+ -webkit-border-radius: 10px;
color: #193250;
display: block;
margin: 8px 10px;
+ position: relative;
text-decoration: none;
- }
-
- a.giant-button > div.contents {
- position: absolute;
- text-align: left;
width: 300px;
- -webkit-background-size: 75px auto;
- z-index: 2;
}
- a.giant-button > div.contents > piechart {
+ a.giant-button > piechart {
float: left;
margin: 10px;
vertical-align: middle;
}
- a.giant-button > div.contents > label {
+ a.giant-button > label {
display: block;
float: left;
font-size: 25px;
@@ -57,7 +53,7 @@
width: 155px;
}
- a.giant-button > div.contents > div.text {
+ a.giant-button > div.text {
display: block;
float: left;
font-size: 14px;
@@ -71,7 +67,7 @@
width: 50%;
}
- a.giant-button > div.contents > div.legend {
+ a.giant-button > div.legend {
float: left;
font-size: 14px;
left: 15px;
@@ -80,12 +76,6 @@
width: 290px;
}
- a.giant-button > div.background {
- background-color: #000000;
- opacity: 0.15;
- -webkit-border-radius: 10px;
- }
-
div.key {
margin-bottom: 4px;
}
@@ -207,48 +197,40 @@
<dialog>
<panel>
-<a class="giant-button">
- <div class="contents">
- <piechart><div>
- <div id="system-left"></div>
- <div id="system-right">
- <div class="lslice"></div>
- <div class="rslice"></div>
- <div class="tslice"></div>
- <div class="bslice"></div>
- </div>
- <div class="nslice"><div id="system-size"></div></div>
- </div></piechart>
-
- <label>System</label>
- <div class="text">A small partition used to store iPhone OS. Cydia adds a few important programs and libraries.</div>
-
- <div class="legend" id="system-legend"></div>
- </div>
-
- <div class="background" style="height: 149px"></div>
+<a class="giant-button" style="height: 149px">
+ <piechart><div>
+ <div id="system-left"></div>
+ <div id="system-right">
+ <div class="lslice"></div>
+ <div class="rslice"></div>
+ <div class="tslice"></div>
+ <div class="bslice"></div>
+ </div>
+ <div class="nslice"><div id="system-size"></div></div>
+ </div></piechart>
+
+ <label>System</label>
+ <div class="text">A small partition used to store iPhone OS. Cydia adds a few important programs and libraries.</div>
+
+ <div class="legend" id="system-legend"></div>
</a>
-<a class="giant-button">
- <div class="contents">
- <piechart><div>
- <div id="private-left"></div>
- <div id="private-right">
- <div class="lslice"></div>
- <div class="rslice"></div>
- <div class="tslice"></div>
- <div class="bslice"></div>
- </div>
- <div class="nslice"><div id="private-size"></div></div>
- </div></piechart>
-
- <label>Private</label>
- <div class="text">Most content is stored on this partition: from applications (Cydia and Apple) to multimedia.</div>
-
- <div class="legend" id="private-legend"></div>
- </div>
-
- <div class="background" style="height: 189px"></div>
+<a class="giant-button" style="height: 189px">
+ <piechart><div>
+ <div id="private-left"></div>
+ <div id="private-right">
+ <div class="lslice"></div>
+ <div class="rslice"></div>
+ <div class="tslice"></div>
+ <div class="bslice"></div>
+ </div>
+ <div class="nslice"><div id="private-size"></div></div>
+ </div></piechart>
+
+ <label>Private</label>
+ <div class="text">Most content is stored on this partition: from applications (Cydia and Apple) to multimedia.</div>
+
+ <div class="legend" id="private-legend"></div>
</a>
</panel>
diff --git a/Cydia.mm b/Cydia.mm
index 87a091d..71a57df 100644
--- a/Cydia.mm
+++ b/Cydia.mm
@@ -1729,6 +1729,8 @@ class Progress :
[warnings addObject:@"illegal package identifier"];
else for (size_t i(0); i != length; ++i)
if (
+ /* XXX: technically this is not allowed */
+ (name[i] < 'A' || name[i] > 'Z') &&
(name[i] < 'a' || name[i] > 'z') &&
(name[i] < '0' || name[i] > '9') &&
(i == 0 || name[i] != '+' && name[i] != '-' && name[i] != '.')
@@ -1736,17 +1738,25 @@ class Progress :
if (strcmp(name, "cydia") != 0) {
bool cydia = false;
+ bool _private = false;
bool stash = false;
+ bool repository = [[self section] isEqualToString:@"Repositories"];
+
if (NSArray *files = [self files])
for (NSString *file in files)
if (!cydia && [file isEqualToString:@"/Applications/Cydia.app"])
cydia = true;
+ else if (!_private && [file isEqualToString:@"/private"])
+ _private = true;
else if (!stash && [file isEqualToString:@"/var/stash"])
stash = true;
- if (cydia)
+ /* XXX: this is not sensitive enough. only some folders are valid. */
+ if (cydia && !repository)
[warnings addObject:@"files installed into Cydia.app"];
+ if (_private)
+ [warnings addObject:@"files installed with /private/*"];
if (stash)
[warnings addObject:@"files installed to /var/stash"];
}
@@ -6997,7 +7007,7 @@ int main(int argc, char *argv[]) { _pooled
Indices_ = [[NSMutableDictionary alloc] init];*/
Indices_ = [NSMutableDictionary dictionaryWithObjectsAndKeys:
- //@"http://"/*"cache.saurik.com/"*/"cydia.saurik.com/server/rating/@", @"Rating",
+ @"http://"/*"cache.saurik.com/"*/"cydia.saurik.com/server/rating/@", @"Rating",
@"http://"/*"cache.saurik.com/"*/"cydia.saurik.com/repotag/@", @"RepoTag",
nil];
@@ -7033,8 +7043,10 @@ int main(int argc, char *argv[]) { _pooled
Documents_ = [[[NSMutableArray alloc] initWithCapacity:4] autorelease];
#endif
- if (substrate && access("/Library/MobileSubstrate/MobileSubstrate.dylib", F_OK) == 0)
- dlopen("/Library/MobileSubstrate/MobileSubstrate.dylib", RTLD_LAZY | RTLD_GLOBAL);
+ if (substrate && access("/Applications/WinterBoard.app/WinterBoard.dylib", F_OK) == 0)
+ dlopen("/Applications/WinterBoard.app/WinterBoard.dylib", RTLD_LAZY | RTLD_GLOBAL);
+ /*if (substrate && access("/Library/MobileSubstrate/MobileSubstrate.dylib", F_OK) == 0)
+ dlopen("/Library/MobileSubstrate/MobileSubstrate.dylib", RTLD_LAZY | RTLD_GLOBAL);*/
if (access("/User", F_OK) != 0)
system("/usr/libexec/cydia/firmware.sh");