[Q] #zdzihu hack-fix, What kind of hack is it? - XPERIA X10 Android Development

Hi
I have this code in my chargemon file. I think I got it from Wolfbreaks ROM.
Code:
# zdzihu: hack-fix
if [ -e /data/data/com.android.providers.telephony/databases/telephony.db ]; then
/system/bin/chroot / /init
What does it do?

Post it the correct thread
http://forum.xda-developers.com/showthread.php?t=769191

This for your overclocking and cpu gouvenar smartass.

robertberma said:
This for your overclocking and cpu gouvenar smartass.
Click to expand...
Click to collapse
What?
Can't be in that telephony DB, can it?
No, you have to elaborate that explenation a bit. I don't belive what you say.

it from wolfs rom, from his update 404 for stock kernel. whit this you can change with set cpu for root users the goveneur not only ondemand or performance but also choose smartass. Z made that one.

robertberma said:
it from wolfs rom, from his update 404 for stock kernel. whit this you can change with set cpu for root users the goveneur not only ondemand or performance but also choose smartass. Z made that one.
Click to expand...
Click to collapse
Yes but not from that code.
I can comment that code out (#) and still have all the governors left to choose from.
This is a database of which service provders carrier you are on and such stuff.
I just don get what the "fix" is.
What does the command ...
then
/system/bin/chroot / /init
.... do when it finds that database? Any Linux knowledge? I guess I have to learn the hard way myself

Related

[KERNEL] - [Backslash-1.3 KG1] - with [CF-Root v4.1] Initramfs

This is a self compiled Kernel from these sources. It's a fork of the kernel source git plus some performance tweaks and minus a bad patch, which turned out to drain the battery.
The initramfs (source) is a modified CF-Root v4.1 of the KG1.
I added some /proc and /sys tweaks in init.rc (github of the initramfs):
Code:
+ write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ondemand
+ write /sys/block/mmcblk0/queue/scheduler noop
+ write /sys/block/mmcblk0/queue/read_ahead_kb 512
+ write /proc/sys/vm/highmem_is_dirtyable 1
+ write /proc/sys/vm/dirty_writeback_centisecs 1500
+ write /proc/sys/vm/laptop_mode 5
This probably works best with Villain ROM 2.0 [2.3.4] and the XXKG1 radio image.
History:
Version 1.1:
added touchscreen fix suggested by vincenzo91.
Version 1.2 :
now based on CF-Root 4.1 (was 4.0)
cherry-pick'ed some fixes from cfs-exp branch of ninphetamine github
removed "setprop dalvik.vm.execution-mode int:fast", which prevents JIT
changed touchscreen MOVHYSTI to 5 from 0 (15 original)
Version 1.3 :
removed bogus /sys, /proc settings
use /init from KG1/CF-ROOT
set readahead to 512kb
enabled fuse, so you can use "ntfs-3g" to mount a NTFS drive
There is also a variant with MOVHYSTI set to "0" (Backslash-1.3-HYST0). Let me know, if you have those touchscreen problems with either "0" (HYST0) or the "5" in the normal kernel.
So how does it look like? See the attached image (FastDormancy was not turned off, because it got better in 2.3.4)
Benchmark CF-Bench Pro v1.1
Interpretation left to the reader...
Code:
Stock CF-Root KG1: | Backslash-1.3:
Native: 11256 11478 11172 | 11566 11360 11414
Java: 3155 3235 3071 | 3411 3240 3327
Overall:6395 6532 6311 | 6673 6488 6561
read: 553 535 540 | 564 571 570
write: 138 180 176 | 181 181 173
saturn_de said:
This is a self compiled Kernel from this sources. It's a fork of the kernel source git plus some performance tweaks and minus a bad patch, which turned out to drain the battery.
The initramfs is a modified CF-Root v4.0 of the XXKG1.
I added some /proc and /sys tweaks in init.rc.
This probably works best with Villain ROM 2.0 [2.3.4] and the KG1 radio image.
So how does it look like?
Click to expand...
Click to collapse
So does this also fix the push exchange email battery drain or just some other drain (non-existent to me)?
saturn_de said:
This is a self compiled Kernel from this sources. It's a fork of the kernel source git plus some performance tweaks and minus a bad patch, which turned out to drain the battery.
The initramfs is a modified CF-Root v4.0 of the XXKG1.
I added some /proc and /sys tweaks in init.rc.
This probably works best with Villain ROM 2.0 [2.3.4] and the KG1 radio image.
So how does it look like?
Click to expand...
Click to collapse
This can fix the Android OS draining ?
szav said:
This can fix the Android OS draining ?
Click to expand...
Click to collapse
standby battery usage seems quite good, will try on cognition 1.11 and feedback..
Hy guys is it possibile have this kernel in a zip flashable version..
I haven' t my pc here but i need to try cause i want my phone for 24 hrs...a day...
Regards
cescof said:
Hy guys is it possibile have this kernel in a zip flashable version..
I haven' t my pc here but i need to try cause i want my phone for 24 hrs...a day...
Regards
Click to expand...
Click to collapse
Just flash in CWM. Open CWM and select Flash Kernel, then select this kernel. It will flash then reboot.
Testing it now. Lets hope it works
Btw, have you noticing it not obeying SetCPU?
In both CF-Root and a testkernel I tried then clock would go above the max I set. I had it set at 800 but it still went to 1ghz, 1.2ghz and 1.6ghz...
ante0 said:
Just flash in CWM. Open CWM and select Flash Kernel, then select this kernel. It will flash then reboot.
Testing it now. Lets hope it works
Btw, have you noticing it not obeying SetCPU?
In both CF-Root and a testkernel I tried then clock would go above the max I set. I had it set at 800 but it still went to 1ghz, 1.2ghz and 1.6ghz...
Click to expand...
Click to collapse
Just don't use SetCPU... it's useless. "Race to idle" is the key. Don't be smarter than the kernel and add more load with an app.
ante0 said:
Just flash in CWM. Open CWM and select Flash Kernel, then select this kernel. It will flash then reboot.
Testing it now. Lets hope it works
Btw, have you noticing it not obeying SetCPU?
In both CF-Root and a testkernel I tried then clock would go above the max I set. I had it set at 800 but it still went to 1ghz, 1.2ghz and 1.6ghz...
Click to expand...
Click to collapse
Really? Where did you check your real clock speed? In the Battery statistics in setCPU it tells me 0% for 1200 Mhz if i set it to 500-1000Mhz, using CF-Root for now.
@saturn_de: Isn't CF-Root 4.1 out? I have no idea whats changed but im one of those "the newer the better guys" even though i know thats not always true haha
EDIT: Ill stop using setCPU for today and see how it goes
ante0 said:
Just flash in CWM. Open CWM and select Flash Kernel, then select this kernel. It will flash then reboot.
Testing it now. Lets hope it works
Btw, have you noticing it not obeying SetCPU?
In both CF-Root and a testkernel I tried then clock would go above the max I set. I had it set at 800 but it still went to 1ghz, 1.2ghz and 1.6ghz...
Click to expand...
Click to collapse
it is not an overclocked kernel..and it obeys setcpu profiles..i am using them..
Removing setcpu as per saturn.. lets see..
dr3minem said:
@saturn_de: Isn't CF-Root 4.1 out? I have no idea whats changed but im one of those "the newer the better guys" even though i know thats not always true haha
Click to expand...
Click to collapse
I will have a look what changed in CF-Root 4.1 ...
So anyone here can confirm/deny the battery drain fix?
I cannot see any change yet. Just flashed KG1 and the kernel and the Android OS is still 20%.
We will see in a long-term.
Fingers crossed.
H377 said:
I cannot see any change yet. Just flashed KG1 and the kernel and the Android OS is still 20%.
We will see in a long-term.
Fingers crossed.
Click to expand...
Click to collapse
Email is still draining... Don't know about anything else as I haven't had any other processes / apps draining my power source aka battery.
Pume said:
Email is still draining... Don't know about anything else as I haven't had any other processes / apps draining my power source aka battery.
Click to expand...
Click to collapse
I have Gmail and Exchange all set up to PUSH but I don't have a problem with them. Only the Android OS's battery usage is high.
H377 said:
I have Gmail and Exchange all set up to PUSH but I don't have a problem with them. Only the Android OS's battery usage is high.
Click to expand...
Click to collapse
If your awake bar is not blue when the screen is off then you don't have anything to worry about. Android OS percentage does not mean a thing if the phone stays asleep when it should.
Pume said:
If your awake bar is not blue when the screen is off then you don't have anything to worry about. Android OS percentage does not mean a thing if the phone stays asleep when it should.
Click to expand...
Click to collapse
Thanks!
In fact after 12 or 14 hours I got 50% of the battery with normal usage. I don't know if it's normal or not but my HD2 and Desire also last almost the same.
I always had to charge them at night every day if I didn't want them to run of fuel during next business day.
Hi,
can you tell us what tweaks you applied ?
thx
from my side the kernel looks good so far good idle batterie atm
Flashed via CWM without problems. Will be using this kernel and post results tomorrow night.
I'm on Exynos 2.0.
After 1h2m almost always in idle with screen off (GMail&Exchange Push, 3G on) 1% has gone. The phone was charged to 100% and the battery stats were also wiped.
EDIT: GPS was/is also on

how to make rom a tun.ko suported..?

because in my update here in my country which was the 2.3.4 DXKPD doesnt suport tun.ko..
there no tun.ko in lib/modules..
i had downloaded the tun.ko from any ace gingerbread kernel..
still openvpn doesnt work..
just want to know..thanks for any help..
CF-Root? have you tried?
except that suggestion^^
dont want cfroot because it disabled tether..
btw..do you know why DXKPD doesnt suport tun.ko?
but the 2.2.1 DXKC1 does..
Cf-root doesn't Disable tethering
Sent from my Galaxy Ace on GLSMT 2.1 with XDA app.
Why don't you try just adding tun.ko? I dunno if that will work though.
It's working in cyanogenmod right?
kernel module will not just work like that. it depends on the kernel it were compiled agains. because so far we only had ketut compiled tun.ko for his cfroot, it will only work with cfroot. and it also specific to which cfroot version the tun.ko were compiled agains. tun.ko from cfroot b80 will not work on cfroot b82, and the other way around.
an0nym0us_ said:
kernel module will not just work like that. it depends on the kernel it were compiled agains. because so far we only had ketut compiled tun.ko for his cfroot, it will only work with cfroot. and it also specific to which cfroot version the tun.ko were compiled agains. tun.ko from cfroot b80 will not work on cfroot b82, and the other way around.
Click to expand...
Click to collapse
Off topic, are you working on your kernel?
it was working on cm..
but a bugged occur..openvpn always disconnects even there was 3g..
so why DXKC1 which was in froyo working/ i just download a tun.ko for froyo ace..
i had done downloading a tun.ko for gingerbread ace and placed it also to where i had put the tun.ko of my working openvpn when i was in froyo..
same process..
but error occur..
cannot allocate tun.ko..
consegregate said:
Off topic, are you working on your kernel?
Click to expand...
Click to collapse
Yes. Done adding ext4 support. But still having hard time enabling init.d. Even got bootloop when using ketuts cfroot kernel ramdisk. Guess im gonna ask ketut for his cfroot source and modify it
Sent from your phone
an0nym0us_ said:
Yes. Done adding ext4 support. But still having hard time enabling init.d. Even got bootloop when using ketuts cfroot kernel ramdisk. Guess im gonna ask ketut for his cfroot source and modify it
Sent from your phone
Click to expand...
Click to collapse
There's a governor called Scary.... I'm curious *wink wink*
Anyway I think ketut is busy these days. He's not logged in since 18 Oct *stalker*
i've tried them all. scary, minmax, smartassv2, savagedzen, brazilianwax etc
smartass and smartassv2 doesnt work well with my added additional frequency, give me sudden reboot. minmax is waste of juice, always running at highest possible frequency when screen on, totally ignoring system load. savagedzen is good, but it give low 3d perfomance, i dont know why but its wierd.
btw heres a good reading
an0nym0us_ said:
i've tried them all. scary, minmax, smartassv2, savagedzen, brazilianwax etc
smartass and smartassv2 doesnt work well with my added additional frequency, give me sudden reboot. minmax is waste of juice, always running at highest possible frequency when screen on, totally ignoring system load. savagedzen is good, but it give low 3d perfomance, i dont know why but its wierd.
btw heres a good reading
Click to expand...
Click to collapse
I saw on my Backflip that it had a Lagfree governor .
Can you tell me what kind of governor that is ?
Sent from my GT-S5830 using XDA App
tun module for kernel 3.0.8-perf-g9d5151f
I need some to help me compile tun module for my device .The tunko is not found in tunko installer. kernel version 3.0.8-perf-g9d5151f. thanks

[Kernel] [Ray] DooMLoRD's Kernel for Ray [Stock] [Update: 28 Dec 2011]

This is a repackaging of DooMLoRD's kernel for the Ray - this is only for the stock Rom at this time, and will not work on MIUI or CM.
It's based on DooMLoRD's Github sources, original thread with more information about the Kernel is here: http://forum.xda-developers.com/showthread.php?t=1172885 - all thanks should go to him, I've edited very little, simply changed some of the config to suit the Ray and tested it.
Brief summary:
* Overclockable to 2GHz (set at 1GHz to start - made sure of it this time!)
* Enabled most of the schedulers so you can choose your favourite (brazillianwax, smoothass, SavagedZen, interactiveX, lagfree, minmax, Scary, smartass, interactive, conservative, ondemand, userspace, powersave, smartassV2, performance).
[UPDATE]
Had a look at the issues with the 'Flash' on the camera not working - this is now fixed.
Also, after being requested by a couple of people I've recompiled it for MIUI - you'll have to flash the second version for it to boot. (Please choose the correct one, flashing the wrong one will let you access CWM-recovery, but the system won't boot.) MIUI isn't working at this time.
Updated Kernel can be found here for Stock Roms:
http://dl.dropbox.com/u/17615284/DoomKernel-2011-12-28-1201.img
[Edit] Kernel for MIUI booted, but became unresponsive after it's been on a while. Taken the link down until I can find a day or two where I'm not using my phone so I can flash MIUI myself and look into it.
Thank you very much for this good present !
I just would ask if it is compatible with bheremans' MIUI rom, and if it's not if someone can port it, or explain to me how it can be done.
hartej said:
Brief summary:
* Overclockable to 2GHz (set at 1GHz to start - made sure of it this time!)
* Enabled most of the schedulers so you can choose your favourite (brazillianwax, smoothass, SavagedZen, interactiveX, lagfree, minmax, Scary, smartass, interactive, conservative, ondemand, userspace, powersave, smartassV2, performance). Think I may have missed a few - shall go back and check when I get a chance.
* Can't remember if I managed to get it working with the latest Ramdisk or not. At one point I was using it with a previous Ramdisk but not sure if I eventually got it working... (Currently the CMW Recovery is version 5.0.2.7?) I'll have to check on this, if it's using an old RamDisk then some of the features may not be available.
Initial release - I've been using it for a day now and it seems quite stable.
http://dl.dropbox.com/u/17615284/RayDoomKernel-2011-12-18.img
Click to expand...
Click to collapse
Can you integrate in the kernel the dual mode call recording ability, please?
aragog53 said:
Thank you very much for this good present !
I just would ask if it is compatible with bheremans' MIUI rom, and if it's not if someone can port it, or explain to me how it can be done.
Click to expand...
Click to collapse
No idea, I think that MIUI, CM7 and Stock Roms require different Kernels (or some serious customisation) so i'd be guessing: No. But it's just a guess.
Tistitus said:
Can you integrate in the kernel the dual mode call recording ability, please?
Click to expand...
Click to collapse
DooMLoRD added this to his Kernel, but I don't have any requirement to record my calls so can't confirm if it's working or not. Feel free to test it out - you may find yourself in luck!
Bah! Uploading failed the first time, but it's fixed now.
If you downloaded the file before I posted this, and only have a 1.2MB file then please DONT FLASH IT. It shouldn't mess anything up permanantly but your device won't boot.
I've uploaded the file again (to the same location), please re-download and flash this one (it should be just over 6MB)
Please make it compatible for miui?;D.......
Sent from my ST18i using Tapatalk
Hi hartej glad to see you back on the forum
A have quick question, how can be repaired this problem: http://code.google.com/p/android/issues/detail?id=3708 DooMLord may be able to help you repair it? Or will show some tips
Sorry for double post...i had found a way to port to MIUI...take a look here hartej..)
bheremans said:
Rom by iriijo
To port kernel : nothing special, just compile it with :
CONFIG_VMSPLIT_3G=y
# CONFIG_VMSPLIT_2G is not set
and
CONFIG_PAGE_OFFSET=0xC0000000
Click to expand...
Click to collapse
Sent from my ST18i using Tapatalk
Hi Hartej, sorry but even with your second upload. The kernel doesn't boot. It stays at black screen (not even the SE logo)
@hartej: some notes ...
thinking its a good choise using DooMLoRD's kernel as your base, congratulations for your wise decision
some minutes befor i fastboot'ed (temporarly) your image (i.e. fastboot boot <image>)
# kernel cpufreq defaults is ondemand 245760/1862400Hz - no max 1GHz as you'r thinking?
some LITTLE change-requests from me - please
# /proc/config.gz support - a great help for every self-builder
# init.d support - importent i'm thinking, i modifyed init.semc.rc in initrd.img in your boot image for myself (serves only as a example)
service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
user root
oneshot
# a git respository of your kernel for self builder
ok, thats all for NOW, thank you for your good work.
greetings
Doesn't boot
I've downloaded your present(RayDoomKernel-2011-12-18.img / 6.23MB) and flash it on my Ray with fastboot tool. But it doesn't boot, just shows me black screen.(Not even show me SE logo ) Anyway I appreciate your great effort.
is it for stock 4.0.2.0.A.42 firmware
Oh I tried.Doesn't boot with the 4.0.2.A.042 FW.
@hartej
glad to see u back on this
some devices cant handle 1.6Ghz+
thats why i keep 2 kernels
2.0Ghz
and
1.6Ghz
for other things u can check my kernel-ramdisk
SWDJPA said:
I've downloaded your present(RayDoomKernel-2011-12-18.img / 6.23MB) and flash it on my Ray with fastboot tool. But it doesn't boot, just shows me black screen.(Not even show me SE logo ) Anyway I appreciate your great effort.
Click to expand...
Click to collapse
masray said:
Oh I tried.Doesn't boot with the 4.0.2.A.042 FW.
Click to expand...
Click to collapse
Lol, I'll upload the right one eventually! Just tried downloading and flashing this myself, only to discover that I'd mistakenly uploaded the latest version instead of the working one. Still playing with getting the ARC ramdisk working with the Ray, possibly because of the speed issue DooMLoRD quotes above which is the reason for the black screen - the Kernel itself is identical, it's just a difference in the RamDisks.
I've uploaded the working one now - sorry for any confusion!
http://dl.dropbox.com/u/17615284/DoomKernel-2011-12-18-1547.img
hartej said:
Lol, ... I've uploaded the working one now - sorry for any confusion!
http://dl.dropbox.com/u/17615284/DoomKernel-2011-12-18-1547.img
Click to expand...
Click to collapse
i'll testet it shortly, now it boot in ondemand 245760/1024000Hz und init.d support works too - super
one questions leaves ...
i want to compile myself. where to get your changes for the ray (.config mainly ???), when i use DooMLoRD's cloned git sources ???
thanks and have i nice day ...
hartej said:
Lol, I'll upload the right one eventually! Just tried downloading and flashing this myself, only to discover that I'd mistakenly uploaded the latest version instead of the working one. Still playing with getting the ARC ramdisk working with the Ray, possibly because of the speed issue DooMLoRD quotes above which is the reason for the black screen - the Kernel itself is identical, it's just a difference in the RamDisks.
I've uploaded the working one now - sorry for any confusion!
http://dl.dropbox.com/u/17615284/DoomKernel-2011-12-18-1547.img
Click to expand...
Click to collapse
Please for MIUI ??
Works Great
Two thumbs up!
It is quite stable even at 2ghz.
But I would stay at 1.5 with smartass v2 considering battery life.
Thank you
-Ray User from Korea.
doesn't work with FXP050 on my Ray ... It does boot into the system but it doesn't show any submenus or option menus ... they are there, i can select by where i remember them to be but it is not graphicly shown
This Kernel is for STOCK Rom !!!! not for cyanogen mod.

What Kernels for No-Frills CPU?

My SGA is on GB 2.3.6 (Russian ROM) and I have installed No-Frills CPU, but I am not able to use it to full potential. The Developer says I need some custom Kernels for this.
Which Kernels are these? Is it ok to use diff kernels?
what do u mean by "full potential"?
afaik for changing cpu scaling freq, cpu governor or changing disk io scheduler, u can do it even on stock kernel. maybe the selection is a little bit less, but it'll definitely works.
i dont know if cpufrills can also change cpu voltage, even so we dont have any kernel that support cpu voltage changing yet.
You might have seen No-Frills cpu, but few users are getting more governors than me using some diff kernel.
anyways, I want some other way, so that my cpu cuts down frequency really down when phone is locked, and jump up accoring to requirement. (Just like Cool'n quiet in AMD)
then u might wanna install cfroot kernel. it contain smartassv2 and interactiveX that do have automatic cpu down scaling when screen off.
but u can also set up profile to do it manually on other governors using setcpu.
What about the kernel by squadzone supposedly optimised for gingercruzt but it works for cm7 and has 6 IO schedulers, but cf-root is best for stock
Sent from my GT-S5830 using xda premium
My phone is already rooted and got busybox. So if I use cfroot, what would the affect on previous root and busybox? How do I backup current kernel if I need to go back.
animal_he said:
My phone is already rooted and got busybox. So if I use cfroot, what would the affect on previous root and busybox? How do I backup current kernel if I need to go back.
Click to expand...
Click to collapse
no, it wont affect root as it also give root.
and just use clockworkmod recovery to create backup of ur whole rom. and if u just wanna restore kernel use the advance restore to restore just the kernel itself
an0nym0us_ said:
then u might wanna install cfroot kernel. it contain smartassv2 and interactiveX that do have automatic cpu down scaling when screen off.
but u can also set up profile to do it manually on other governors using setcpu.
Click to expand...
Click to collapse
Hey, I'm using ICS Final and I only have the InteractiveX and normal Interactive options but not the smartassV2. Where can I get it? I'm using the Smartass governor out of all of them. What is the difference between the two? (V1 & V2)
Thanx a lot for all the info mate. Can u just help me find one appropriate for my phone?
Version 2.3.6
Build number .XXKPP
SuperAce609 said:
Hey, I'm using ICS Final and I only have the InteractiveX and normal Interactive options but not the smartassV2. Where can I get it? I'm using the Smartass governor out of all of them. What is the difference between the two? (V1 & V2)
Click to expand...
Click to collapse
Install zImage-Mod v1.0 (you can find it in the Development Section).

Hannspad: no Governors and schedulers available in Setcpu

Hello everybody.
I have a Hannspree Hannspad, which is similar to the G Tab.
Currently I am Using Flashback 10 with a kernel provided by fards and edited by me.
Here on Github:
https://github.com/Gott/ab73kernel-Hannspad-2632
Unfortunately, I cannot set the CPU Governors in apps as SetCPU, Antutu Cpu Master, or else.
The fields for setting the governors are just blank.
When I check the files in /sys/dev/system/cpu/cpu0/cpufreq/scaling_governor
there is no file.
there is a /sys/dev/ but nothing else.
Can you tell me what is wrong?
I set the Governor in the kernel config, as well as the scheduler (noop).
Furthermore, the Interactive and Conservative Governor do not work.
The tablet simply does not start.
It hangs on the Hannspree logo, before the Flashback logo (Framebuffer dummy driver).
lordofazeroth said:
The fields for setting the governors are just blank.
Click to expand...
Click to collapse
That kernel looks like a pershoot-derived kernel which has the ondemand governor compiled in as the default; and, you don't need to change it which is why the /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors file will read blank.
When I check the files in /sys/dev/system/cpu/cpu0/cpufreq/scaling_governor
there is no file.
there is a /sys/dev/ but nothing else.
Click to expand...
Click to collapse
That's the wrong directory. It's actually: /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
Thanks.
Do you know if the Interactive or Conservative are working in the pershoot kernel?
If compiled, my tablet is not starting any more.
I thought about implementing another governor, as I think, ondemand clocks up too fast.
lordofazeroth said:
If compiled, my tablet is not starting any more.
Click to expand...
Click to collapse
How did you enable those governors? By editing the defconfig file manually or using make config/menuconfig/xconfig?
I thought about implementing another governor, as I think, ondemand clocks up too fast.
Click to expand...
Click to collapse
Not sure if it'll do what you want. See this question and pershoot's answer in the next one.

Categories

Resources