"OMG, yet another registry editor!" you'll say and of course you are right - yes, it is!
However (I hope so!) it will be a final WP tweaker, not because of the latest rumors about MS is going to drop WP platform but 'cause of the app's architecture.
It's a first XML-template based registry tweaker for WP8.1; instead of waiting for the existing tweakers modification, you may easily add your own hack (and contribute it for community of course!).
This app should work on the interop-unlocked Lumias and Samsung handsets ONLY.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
The WPTweaker's user interface is pretty simple and doesn't require explanation.
The XML data file format is kinda more complicated (but nothing close to the "rocket science" of course )
So, here an example of the Tweaks.xml file:
Code:
<?xml version="1.0" encoding="utf-8" ?>
<tweaks>
<contributors>
<contributor>sensboston</contributor>
</contributors>
<tweak category="System" name="Unlimited sideloading" type="toggle" description="Max number of unsigned apps" >
<entry path="HKLMSoftwareMicrosoftDeviceRegInstall" name="MaxUnsignedApp" type="dword" default="0000000A" comparer=">">
<value>7fffffff</value>
</entry>
</tweak>
<tweak category="System" name="Unlimited sideloading #1" type="input" description="Max number of unsigned apps">
<entry path="HKLMSoftwareMicrosoftDeviceRegInstall" name="MaxUnsignedApp" type="dword" default="0000000A"/>
</tweak>
<tweak category="System" name="Unlimited sideloading #2" type="enum" description="Max number of unsigned apps">
<entry path="HKLMSoftwareMicrosoftDeviceRegInstall" name="MaxUnsignedApp" type="dword" default="0000000A">
<value name="Student">2</value>
<value name="Developer">A</value>
<value name="Unlimited">7fffffff</value>
</entry>
</tweak>
<tweak category="User interface" name="Haptic feedback (toggle)" type="toggle" description="Enable or disable haptic feedback" reboot="true">
<entry path="HKEY_LOCAL_MACHINESystemTouchButtons" name="Vibrate" type="dword" default="0">
<value>1</value>
</entry>
</tweak>
<tweak category="User interface" name="Haptic feedback (input)" type="input" description="Enable or disable haptic feedback" reboot="true">
<entry path="HKEY_LOCAL_MACHINESystemTouchButtons" name="Vibrate" type="dword" default="0">
<value>1</value>
</entry>
</tweak>
<tweak category="User interface" name="Haptic feedback (enum)" type="enum" description="Enable or disable haptic feedback" reboot="true">
<entry path="HKEY_LOCAL_MACHINESystemTouchButtons" name="Vibrate" type="dword" default="0">
<value name="Enabled">1</value>
<value name="Disabled">0</value>
</entry>
</tweak>
<tweak category="User interface" name="Touch buttons intensity" type="input" description="Increase or decrease intensity of touch buttons" min="100" max="1000">
<entry path="HKLMSystemTouchButtons" name="Intensity" type="dword" default="36"/>
</tweak>
<tweak category="User interface" name="Touch buttons intensity #2" type="enum" description="Increase or decrease intensity of touch buttons">
<entry path="HKLMSystemTouchButtons" name="Intensity" type="dword" default="36">
<value name="Default">36</value>
<value name="Longer">72</value>
<value name="Long">120</value>
</entry>
</tweak>
<tweak category="System" name="Enable internet sharing" type="toggle" description="Enable internet sharing, disabled by cell provider" reboot="true">
<entry path="HKEY_LOCAL_MACHINESystemControlSet001ServicesICSSVCSettings" name="Enabled" type="dword" default="0">
<value>1</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESystemControlSet001ServicesICSSVCSettings" name="EntitlementRequired" type="dword" default="1">
<value>0</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettings{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" name="@" type="string">
<value>Soft AP</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettings{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" name="Location" type="string">
<value>app://5B04B775-356B-4AA0-AAF8-6491FFEA5629/Default</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettings{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" name="Plugin" type="string">
<value>{09c51652-2cbc-49d5-883e-20606f9a47ff}</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettings{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" name="QuickSettingsIconURI" type="string">
<value>res://UIXMobileAssets{ScreenResolution}!actioncenter.hotspot.tier25.png</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettings{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" name="QuickSettingsTitle" type="string">
<value>@windowssystem32Settings3Res.dll,-535</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettings{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" name="Title" type="string">
<value>@windowssystem32Settings3Res.dll,-242</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettings{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" name="Type" type="dword" default="0">
<value>1</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettings{69DAA7D1-09EA-4eae-A67E-56E4B0B4CA5B}SecureItems" name="{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" type="dword">
<value>b0</value>
</entry>
<entry path="HKEY_LOCAL_MACHINESoftwareMicrosoftSettingsQuickSettingElements" name="{1DEF9B7D-2322-40eb-A007-16A75D5CDA6F}" type="dword">
<value>7</value>
</entry>
</tweak>
<tweak category="User interface" name="Boot screen logo" type="input" description="Change boot screen logo">
<entry path="HKEY_LOCAL_MACHINESYSTEMShellBootScreens" name="WPBootScreenOverride" type="string"/>
</tweak>
</tweaks>
Let me explain for a little this XML data.
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
<contributors> element is a tweak contributors list, I'll be glad to add you to this list.
Element <tweak> must have some attributes and may have some...
required attributes
- category="User interface": it's a tweak category, all tweaks will be grouped by categories, and these categories become a pivot pages headers
- name="Touch buttons intensity": short tweak description
- type="enum": tweak type. There are 3 types of tweaks currently serving: toggle, input and enum
optional attributes
- description="Increase or decrease intensity of touch buttons": detailed tweak description
- reboot="true": reboot is required for this tweak?
- min="100", max="1000": minimal and maximal value limits (for numeric input, currently not implemented)
Element <entry> represents registry entry.
required attributes
- path="HKLMSoftwareMicrosoftDeviceRegInstall" : registry key path
- name="MaxUnsignedApp": registry key name
- type="dword": registry data type, can be "dword", "qword", "string", "strings" and "binary"
- default="0000000A" : default registry value. Can be omitted but definitely good to have one...
optional attributes
- comparer=">": determines how to check tweak state. Logical operation for the value comparer (with default value). By default it's "!=" (not equal), also can be ">" or "<"
Element <value> it's a registry entry value.
This element may have an optional attribute "name", to specify how this value should appear in the combo box.
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Since version 1.2.0 I've added ability to customize application's look. It can be done by adding a few element to the XML data file (Tweaks.xml). For example, adding these lines of xml code:
Code:
<theme name="Blue Waves">
<AppHeaderBackgroundBrush>#0F1F2E</AppHeaderBackgroundBrush>
<AppHeaderForegroundBrush>#C2D1E0</AppHeaderForegroundBrush>"
<AppHeaderFontSize>32</AppHeaderFontSize>"
<PageHeaderBackgroundBrush>#0F1F2E</PageHeaderBackgroundBrush>
<PageHeaderForegroundBrush>#C2D1E0</PageHeaderForegroundBrush>
<PageHeaderFontSize>32</PageHeaderFontSize>
<TweakHeaderBackgroundBrush>#24476B</TweakHeaderBackgroundBrush>
<TweakHeaderForegroundBrush>#C2EBFF</TweakHeaderForegroundBrush>
<TweakHeaderFontSize>22</TweakHeaderFontSize>
<TweakDescriptionForegroundBrush>#C2EBFF</TweakDescriptionForegroundBrush>
<TweakDescriptionFontSize>14</TweakDescriptionFontSize>
<TweakEvenBackgroundBrush>#0F1F2E</TweakEvenBackgroundBrush>
<TweakOddBackgroundBrush>#14293D</TweakOddBackgroundBrush>
</theme>
will change application's look like this:
You may use standard WP theme resources (see below) or custom color values in #argb format (a - transparency - can be omitted). Here is the default color theme:
Code:
<theme name="Default">
<AppHeaderBackgroundBrush>PhoneAccentColor</AppHeaderBackgroundBrush>
<AppHeaderForegroundBrush>PhoneForegroundColor</AppHeaderForegroundBrush>"
<AppHeaderFontSize>24</AppHeaderFontSize>"
<PageHeaderBackgroundBrush>PhoneBackgroundColor</PageHeaderBackgroundBrush>
<PageHeaderForegroundBrush>PhoneForegroundColor</PageHeaderForegroundBrush>
<PageHeaderFontSize>36</PageHeaderFontSize>
<TweakHeaderBackgroundBrush>PhoneChromeColor</TweakHeaderBackgroundBrush>
<TweakHeaderForegroundBrush>PhoneForegroundColor</TweakHeaderForegroundBrush>
<TweakHeaderFontSize>24</TweakHeaderFontSize>
<TweakDescriptionForegroundBrush>PhoneForegroundColor</TweakDescriptionForegroundBrush>
<TweakDescriptionFontSize>18</TweakDescriptionFontSize>
<TweakEvenBackgroundBrush>PhoneBackgroundColor</TweakEvenBackgroundBrush>
<TweakOddBackgroundBrush>PhoneBackgroundColor</TweakOddBackgroundBrush>
</theme>
To apply color theme settings, do the following:
add theme elements to your Tweaks.xml (copy it from the github or from phone first) right under the <tweaks> tag;
load changed file to WPTweaker
exit application - it's important!
start it again and enjoy!
After applying new theme, you can update Tweaks.xml file via http, custom colors will remain. To reset theme, just add empty element <theme /> to your xml and load file.
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
"WPTweaker" is an open source project; download solution from the GitHub
Source code isn't elegant or well commented but at least you may use it without any license restrictions.
Application currently is under intensive development, so don't expect bugless work If you have any suggestion for the new features, or about data structure or functionality - please go ahead, I'm really open minded and any reasonable feature request will be welcome.
A few words about XML structure: there are two conceptual ways for the XML, elements vs attributes. For this project I prefer attributes: in that case tweaks looks more readable and file is smaller...
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
If you want to contribute tweaks and hacks to the project, I'll be glad to list your name/nick/email in the app's "about box"! But please check your hacks first, and ask me (here, in this thread) if you have any questions.
If you like this project, you may buy me a couple bottles of beer by donating, or by installing and rating "5 stars" my apps from the store :good:
This app should work on the interop-unlocked Lumias and Samsung handsets ONLY.
Credits: I wanna say big "thanks" to @vcfan and @-W_O_L_F- for their work (I used their RPC libraries), and to all whitehats from xda-dev!
XDA:DevDB Information
WPTweaker: registry tweaker for WP8.1, Tool/Utility for the Windows Phone 8 General
Contributors
sensboston
Version Information
Status: Release
Created 2015-07-01
Last Updated 2015-07-18
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Version history
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
1.4.3:
capabilities fixed
some bugs fixed
previous versions
1.4.2:
some UI bugs fixed
1.4.1:
nothing functional but massive UI changes:
added "Settings" page
added color theme manager
improved notification sounds preview
1.4.0:
added notifications sound editor (source code adapted from wphTweaker project by Jaxbot & jessenic)
added extended capability ID_CAP_SOUND_CONTROL (for deployment please use deployer from WP 8.0 SDK or third-party application)
some minor fixes and improvements
1.3.3:
XML colorization added to the built-in editor
1.3.2:
added WebBrowser-based xml editor (good stability and performance)
fixed logic for reboot request
fixed few bugs
1.3.1:
fixed exception on return from the color editor page
1.3.0:
added URI association launch scheme (protocol name "wptweaker")
added XML editor (experimental, bad performance)
"donate" button was removed
fixed couple bugs
1.2.2:
added color editor and new tweak type
added two new tweaks: default accents and complementary colors editing
fixed few bugs
1.2.1:
fixed screen timeout tweaks
added "==" comparer
added few new tweaks
1.2.0:
added WPTweaker color theme customization
changed logic to work with default value
added "Full FS access" tweak
1.1.1:
fixed bug with input validation
added two new tweaks
1.1.0:
fixed a few bugs
real tweak list (34 tweaks total) created
improved tweak editors
improved UI
input validation added
categories and tweaks sorting implemented
added auto-check for the list update
1.0.0:
first release (early beta)
Disclaimer: you are downloading and using this app at your own risk; I'm not responsible for any damages caused by usage of the WPTweaker!
Welcome @sensboston
Nice App and very cool UI.
Thanks you so much.
guy, really really good work, it can be a very useful tool for all of us, users contribute with the tool and BOOM! this gonna have a lot of things!
Thank you, @djamol, hope, you'll add tweak or two to the list (you can attach xml to your reply here) and I'll be glad to add you to the contributors list (actually, you can do it in xml )
As for UI, I'm planning to add some UI customization (colors and font sizes) via xml file (by using themes). Probably, will do tomorrow.
davenasc said:
guy, really really good work, it can be a very useful tool for all of us, users contribute with the tool and BOOM! this gonna have a lot of things!
Click to expand...
Click to collapse
@davenasc, I hope, WPTweaker will be a real "community tool". From my side, I promise to donate at least half money received as a donations for this project to the xda-dev web site
help
Think everyone for this app but I have problems with this app and my phone have introp full unlock example when I open app and clicked on touch button and close app I get your phone no introp unlock please help
mahmoud.facebook said:
Think everyone for this app but I have problems with this app and my phone have introp full unlock example when I open app and clicked on touch button and close app I get your phone no introp unlock please help
Click to expand...
Click to collapse
I am also getting it.
@irshad2809, if you see this message, it means the RPC component is failed to initialize. BTW, how you unlock your L-630? By using @vcfan procedure?
I don't have any L-630 but already tried on L-635 & L-822 (unlocked by @vcfan method).
I have unlocked using rom builder method and unlocked caps using vcfan method
Same error on lumia 830.
I can use vcREG and customPFD_0005 with no problem.
I've modified slightly RPC initialization procedure and added message boxes to display possible errors.
Could you try attached version (don't pay attention to the tweak list, I'm working on it now)?
Same Pb but no message box.
I have this Pb when i go to About page and press backKey
Same message is shown with this also
@titi66200, yeah, you've found a bug. Please try attached build...
@irshad2809, you should be allset too.
P.S. Later today I'll upload a new release 1.1 to the start post.
Yes it works
Thanks
thanks
Thanks for reply
Is this normal
WPTweaker updated to 1.1.0
P.S. Guys, I've added 34 tweaks (most from the Jaxbot's application) but there are lot of other useful tweaks posted here, on xda. Could you help me to extend tweak list? Also, do you have any requests for the UI or functionality? Please don't be shy, go ahead
New Tweak
Browsing through the registry I found another interesting tweak you might want to add.
The key "UserSettingsKeyLightsEnabled" under the path "HKLM\SOFTWARE \OEM\Nokia\Display\ColorAndLight" controls the background light for the hardware buttons.
1 enables, and 0 disables them.
I only can check on my L820, but if this is a general thing, then it might help.
Code:
HKLM\SOFTWARE\Microsoft\EventSounds\Sounds\WiFiConnected
"Disabled" =dword 0 or 1
HKLM\SOFTWARE\Microsoft\EventSounds\Sounds\WiFiDisconnected
"Disabled" =dword 0 or 1
@xFleck
Not "UserSettingsKeyLightsEnabled" but "UserSettingKeyLightsEnabled".
Thank you guys! Next time could you please post your tweaks in the WPTweaker xml data format? For example, your tweaks should look like
Code:
<tweak category="System" name="Disable backlight for the hardware buttons" type="toggle">
<entry path="HKLM\SOFTWARE\OEM\Nokia\Display\ColorAndLight" name="UserSettingKeyLightsEnabled" type="dword" default="1">
<value>0</value>
</entry>
</tweak>
<tweak category="Network" name="Enable WiFi connection sound notifications" type="toggle">
<entry path="HKLM\SOFTWARE\Microsoft\EventSounds\Sounds\WiFiConnected" name="Disabled" type="dword" default="1">
<value>0</value>
</entry>
<entry path="HKLM\SOFTWARE\Microsoft\EventSounds\Sounds\WiFiDisconnected" name="Disabled" type="dword" default="1">
<value>0</value>
</entry>
</tweak>
Related
Hi, as you know I recently updated Advanced Config. with a lot of changes since 2.x major version. The most interesting changes concern tweak list which is now extensible, localizable and adaptable to any device.
Many of you asked me to translate my tool into their own language or to add some device specific tweaks, unfortunately I didn't have enough time to care of it... But things changed since 2.x releases, now you can add your own tweaks or translate Advanced Config. by yourself using XML files!
So I decided to create this thread to ask if there are some people willing to help me to improve Advanced Configuration Tool. You can post your tweaks and translations here and I will add them to future releases.
XML configuration files are named AdvancedConfig_XXXX.xml where XXXX is Locale ID (English and French available at the moment). They contain list of registry tweaks organized by categories.
Here is XML configuration file structure, which is quite simple:
Code:
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]advancedconfig[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]category [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Category name[/I][/COLOR][/SIZE][SIZE=2]" [/SIZE][SIZE=2][COLOR=#ff0000]icon[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Icon index[/I][/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]setting [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2]" [/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Registry value name[/I][/COLOR][/SIZE][SIZE=2]" [/SIZE][SIZE=2][COLOR=#ff0000]type[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]Registry value type[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]title[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][I]Tweak title[/I][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]title[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]description[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][I]Tweak description[/I][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]description[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]values [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]default[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Default value[/I][/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]data[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 1[/I][/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][I]Value description 1[/I][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]value[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]data[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 2[/I][/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][I]Value description 1[/I][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]value[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] </[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]values[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]restrict[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff] />[/COLOR][/SIZE]
[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff] <[SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry value name[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]/>[/COLOR][/SIZE]
<[SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry value name[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]data[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Value data[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff] />[/COLOR][/SIZE]
<[SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry value name[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#ff0000] data1[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 1[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [SIZE=2][COLOR=#ff0000]data2[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 2[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [SIZE=2][COLOR=#ff0000]data3[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 3[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][/COLOR][/SIZE][/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#0000ff] />[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]devices[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[SIZE=2][COLOR=#a31515]model[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][COLOR=#000000][I]Device model 1[/I][/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]model[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[/COLOR][/SIZE][/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#0000ff] <[SIZE=2][COLOR=#a31515]model[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][COLOR=#000000][I]Device model 2[/I][/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]model[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]devices[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]restrict[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
</[SIZE=2][COLOR=#a31515]setting[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#0000ff]</[SIZE=2][COLOR=#a31515]category[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
</[SIZE=2][COLOR=#a31515]advancedconfig[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][/COLOR][/SIZE][/COLOR][/SIZE]
Supported value types : integer, string, file, folder.
<values> tag can contain predefined value data for the tweak, which will be displayed in a list in Advanced Config.
<restrict> tag allows you to display the tweak only if it satisfies all the conditions bellow. In this example: Registry key must exist AND Registry value must exist AND value data must equal to specified data AND value data must equal one of those 3 value data AND device model must be one of those 2 models.
Don't hesitate to ask me if something is not enough clear.
You can download here English and French XML configuration files of the lastest Advanced Config. release (2.1.0.0), which is available in this sticky: http://forum.xda-developers.com/showthread.php?t=317070.
Have fun playing with Advanced Config. and thanks in advance to contributors!
schaps said:
Hi, as you know I recently updated Advanced Config. with a lot of changes since 2.x major version. The most interesting changes concern tweak list which is now extensible, localizable and adaptable to any device.
Many of you asked me to translate my tool into their own language or to add some device specific tweaks, unfortunately I didn't have enough time to care of it... But things changed since 2.x releases, now you can add your own tweaks or translate Advanced Config. by yourself using XML files!
So I decided to create this thread to ask if there are some people willing to help me to improve Advanced Configuration Tool. You can post your tweaks and translations here and I will add them to future releases.
XML configuration files are named AdvancedConfig_XXXX.xml where XXXX is Locale ID (English and French available at the moment). They contain list of registry tweaks organized by categories.
Here is XML configuration file structure, which is quite simple:
Code:
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]advancedconfig[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]category [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Category name[/I][/COLOR][/SIZE][SIZE=2]" [/SIZE][SIZE=2][COLOR=#ff0000]icon[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Icon index[/I][/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]setting [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2]" [/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Registry value name[/I][/COLOR][/SIZE][SIZE=2]" [/SIZE][SIZE=2][COLOR=#ff0000]type[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]Registry value type[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]title[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][I]Tweak title[/I][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]title[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]description[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][I]Tweak description[/I][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]description[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]values [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]default[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Default value[/I][/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]data[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 1[/I][/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][I]Value description 1[/I][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]value[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]data[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 2[/I][/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][I]Value description 1[/I][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]value[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] </[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]values[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]restrict[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff] />[/COLOR][/SIZE]
[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff] <[SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry value name[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]/>[/COLOR][/SIZE]
<[SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry value name[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]data[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Value data[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff] />[/COLOR][/SIZE]
<[SIZE=2][COLOR=#a31515]value [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]key[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry key path[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Registry value name[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#ff0000] data1[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 1[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [SIZE=2][COLOR=#ff0000]data2[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 2[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]" [SIZE=2][COLOR=#ff0000]data3[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][I]Value data 3[/I][/COLOR][/SIZE][SIZE=2][COLOR=#000000]"[/COLOR][/SIZE][/COLOR][/SIZE][/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#0000ff] />[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]devices[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff] <[SIZE=2][COLOR=#a31515]model[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][COLOR=#000000][I]Device model 1[/I][/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]model[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[/COLOR][/SIZE][/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#0000ff] <[SIZE=2][COLOR=#a31515]model[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][SIZE=2][COLOR=#000000][I]Device model 2[/I][/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]model[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]devices[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]restrict[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
</[SIZE=2][COLOR=#a31515]setting[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff][SIZE=2][COLOR=#0000ff]</[SIZE=2][COLOR=#a31515]category[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
</[SIZE=2][COLOR=#a31515]advancedconfig[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE][/COLOR][/SIZE][/COLOR][/SIZE]
Supported value types : integer, string, file, folder.
<values> tag can contain predefined value data for the tweak, which will be displayed in a list in Advanced Config.
<restrict> tag allows you to display the tweak only if it satisfies all the conditions bellow. In this example: Registry key must exist AND Registry value must exist AND value data must equal to specified data AND value data must equal one of those 3 value data AND device model must be one of those 2 models.
Don't hesitate to ask me if something is not enough clear.
You can download here English and French XML configuration files of the lastest Advanced Config. release (2.1.0.0), which is available in this sticky: http://forum.xda-developers.com/showthread.php?t=317070.
Have fun playing with Advanced Config. and thanks in advance to contributors!
Click to expand...
Click to collapse
great thanks
i will give it a shot
great work schaps, as usal.
Will try to translate into german this weekend and also post here
the translation in Italian I do her/it me if for you it is all right
Schaps, how correctly localize menus of application? I can't find any related resources
Thank you!
voland_ said:
Schaps, how correctly localize menus of application? I can't find any related resources
Thank you!
Click to expand...
Click to collapse
I didn't make resources for localization of application UI, but if there are several people willing to translate it into their own language I will do it.
schaps said:
I didn't make resources for localization of application UI, but if there are several people willing to translate it into their own language I will do it.
Click to expand...
Click to collapse
OK, we are ready to translate them to the Russain. .xml file is already translated and verified at the moment.
Hi! Here is the Russian .xml file. Could you please prepare the other resources for translation? As far as I see, the French version is completely localized...
I have tried to create a custom tweak as below:
<category name="Calender" icon="Icon index">
<setting key="HKLM\Software\Microsoft\Today\Items\Calendar\Flags" name="Flags" type="integer" >
<title>Calender</title>
<description>Tweak description</description>
<values default="0">
<value data="1">Show Upcoming Appointments and today's "All Day" event</value>
<value data="2">Show Next Appointment</value>
<value data="3">Show Next Appointment and today's "All Day" event</value>
<value data="4">see tomorrow's Appointments on the Calendar Today item WITHOUT today's All Day event</value>
<value data="5">see tomorrow's Appointments on the Calendar Today item WITH today's All Day event</value>
</values>
</setting>
</category>
However i can seem to import the xml into advance config.
Am i doing something wrong?
Need your help greatly
Handy tool here: http://forum.xda-developers.com/showthread.php?t=371828
Code:
</setting>
<setting key="HKEY_CURRENT_USER\Software\Microsoft\Inbox\Settings\OEM" name="SMSInboxThreadingDisabled" type="integer">
<title>Old Style SMS</title>
<description>Disable the Chat/Threaded view in SMS messages on WM6.1</description>
<values default="0">
<value data="0">Disable</value>
<value data="1">Enable</value>
</values>
</setting>
Thanks a lot for your translation and tweaks, I will look at this and will probably include them in next Advanced Config version.
Dear all,
Being the main contributor to the new versions of the KaiserTweak.xml I can't refrain from contributing to the AdvancedConfig.xml too
Attached English version contains the following changes:
* Minor spelling error modifications
* Added "Polaris" model to the "Phone sleep during call" and "Fast sleep during call" tweaks
* Changed the key location of "EnableFastDormantDisplayDuringCall" which was invalid
* Added "Threaded SMS" tweak from KaiserTweak
* Added "Log Clean Period" tweak from KaiserTweak
* Added "Ringtone" tweak from KaiserTweak
* Added "Ringtone (custom)" tweak from my brain
* Decentboi's Calendar tweak - I was having trouble with the long lines btw, so I changed the text to:
Code:
<value data="1">Upcoming Appt's WITH today's All Day events</value>
<value data="2">Next Appt only</value>
<value data="3">Next Appt WITH today's All Day events</value>
<value data="4">Tomorrow's Appt's WITHOUT today's All Day event</value>
<value data="5">Tomorrow's Appt's WITH today's All Day event</value>
Other suggestions are welcome
I will try to convert some of the other KasierTweak tweaks as well, but the main problem with AdvancedConfig I have right now is:
One thing I can do with KaiserTweak is set multiple registry keys from one tweak. For instance:
It is possible to set the keypad buttons of the dialer to "vibrate". For that you need to set the Sound for each button ("HKCU\ControlPanel\Sounds\dtmf?\Sound") to "*vibrate*". When changing it back to the default it needs to be the number of the actual button...
The xml-code for KaiserTweak explains this a little better (I'm sure you'll understand as soon as you see it):
Code:
<tweak>
<title>Dialer Button behaviour</title>
<value default="default" disabled="disabled" advised="advised" value="0">Tones</value>
<value value="*vibrate*">Vibrate</value>
<key type="string">HKCU\ControlPanel\Sounds\dtmf0\Sound</key>
<key mode="set" setvalue="0" when="disabled">HKCU\ControlPanel\Sounds\dtmf0\Sound</key>
<key mode="set" setvalue="1" when="disabled">HKCU\ControlPanel\Sounds\dtmf1\Sound</key>
<key mode="set" setvalue="2" when="disabled">HKCU\ControlPanel\Sounds\dtmf2\Sound</key>
<key mode="set" setvalue="3" when="disabled">HKCU\ControlPanel\Sounds\dtmf3\Sound</key>
<key mode="set" setvalue="4" when="disabled">HKCU\ControlPanel\Sounds\dtmf4\Sound</key>
<key mode="set" setvalue="5" when="disabled">HKCU\ControlPanel\Sounds\dtmf5\Sound</key>
<key mode="set" setvalue="6" when="disabled">HKCU\ControlPanel\Sounds\dtmf6\Sound</key>
<key mode="set" setvalue="7" when="disabled">HKCU\ControlPanel\Sounds\dtmf7\Sound</key>
<key mode="set" setvalue="8" when="disabled">HKCU\ControlPanel\Sounds\dtmf8\Sound</key>
<key mode="set" setvalue="9" when="disabled">HKCU\ControlPanel\Sounds\dtmf9\Sound</key>
<key mode="set" setvalue="10" when="disabled">HKCU\ControlPanel\Sounds\dtmf*\Sound</key>
<key mode="set" setvalue="11" when="disabled">HKCU\ControlPanel\Sounds\dtmf#\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf0\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf1\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf2\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf3\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf4\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf5\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf6\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf7\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf8\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf9\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf*\Sound</key>
<key type="string" mode="set" setvalue="*vibrate*" when="enabled">HKCU\ControlPanel\Sounds\dtmf#\Sound</key>
<description>Set the phonepad to vibrate or use tones.</description>
</tweak>
Can this be done with AdvancedConfig, and if not, can you change AdvancedConfig to support this? That way we can use the nicer interface (I'm being real honest here ) of AdvancedConfig...
Regards,
Nika.
PS. Is this the way you want tweaks to be contributed, Schaps, or you prefer the "CODE" sections only?
Advanced Configuration - Simplified Chinese Translation
Simplified Chinese Translation
Could someone post the tweak (I'd need to know the specific registry key) to make my device auto-disconnect GPRS connection??
Thanks in advance...
flaviopac said:
Could someone post the tweak (I'd need to know the specific registry key) to make my device auto-disconnect GPRS connection??
Thanks in advance...
Click to expand...
Click to collapse
Ehrm... which of the tweaks in Advanced Config do you mean? I don't think this is available in Advanced Config?
It is available in KaiserTweak, and there it's the "HKLM\Comm\ConnMgr\Planner\Settings\CacheTime" key (amount of seconds when it disconnects)... Off course it depends on the applications trying to connect to the internet...
Also, autodisconnect will only work if "HKLM\Comm\ConnMgr\Planner\Settings\SuspendResume" is not set to "~GPRS!" but to "GPRS_bye_if_device_off"... (according to KaiserTweak - I have no idea who invented the tweak, or why these settings need to be set)
Read more here (thank you google ):
http://forum.xda-developers.com/showthread.php?t=305332
Regards,
Nika.
I've just made a modified xml with the ability to hide/lock the Extended ROM. It works on a Prophet, but I don't know whether other devices have the same Extended ROM setup...
Unable to import xml config file
Pls Ignore
It's a very usefull tool for my Polaris.
I wil try to translate into Spanish as soon as possible
if you just tell me what i need to do ill make a hebrew translation
Hi!!!
Here you have a little tutorial on how to create Themes for throttlelauncher. I still have to work on it but almost all is here. With this, theorically you can create almost any interface (still there's some work to do to achieve this ).
Any help, sugestions or requests are appreciated.
To read this tutorial is recomended to know XML file format.
First of all the file structure of a setup for throttlelauncher must be this.
- throttlelauncher instalation
|- Setups
|- MyTheme
|- Skins
|- Skin1
|- skin.xml
|- ...pictures of the skin |- Skin2
|- skin.xml
|- ...pictures of the skin |- Skin3 |- config.xml
|- ....imported xml files
|- icons
|- ....my icons... any dir estructurecan be placed inside
To configure the app there are several tags. All the xml must be inside the root tag.
configuration: this tag contains the configuration parameters for the app (especified by the tag param). The allowed params names are:
- appear: Boolean value. Defines if the animation from down to top when the app got focus is activated (only valid for the standalon app).
- skin: defines the path of the folder of the skin to use. Relative to the app folder. See some post's below how to create the skin files.
- speeddecreaserate: factor that multiplies the value of your finger speed when starting kinetic scrolling.
- speedinitmultiply: factor that sets how fast the speed will be decreased in kinetic scrolling. IMPORTANT: set a value greatter than 1.
- status: two possible values. 0: normal (will show title bar and button bar of the app). 1: Maximized (will show the app fullscreen).
- osdenabled: It true, the OSD top bar will be shown when element is selected.
- imagecontactnophoto: Relative path to the image to be used it there's no contact photo.
- minclicktime: Min lapse time in miliseconds between the mouse down and up events to perform a click over the pressed element.
- .... there are some more... I will add them latter.
Example:
Code:
<configuration>
<param name="screenshot" value="True" />
<param name="appear" value="True" />
<param name="skin" value="Setups\Touchflo3D\skins\general" />
<param name="speeddecreaserate" value="1.2" />
<param name="speedinitmultiply" value="1.4" />
<param name="status" value="1" />
</configuration>
page: wich represent a page inside the app. Must be placed inside the root tag and the first one in the file is going to be the first one been showed by default. Page can have 2 attributes:
- name: contains the name of the page. This is going to be used when whe create a link to this page.
- loadonstartup: Boolean value, the default is "true". I recomend to set it to "false" in any page that be do not use frecuently to reduce memory usage.
- autounload: Indicates if the page will be unloaded automatically (and all it's resources will be freed).
- autounloadtime: time a unused page will remain loaded until autounload event starts. This param will be only used it autounload is true.
- import: will import the target xml as content of the page.
Example:
Code:
<page name="Home" loadonstartup="True" autounload="false">
row: Must be placed inside a page tag. They are specified in order from top to bottom. The following attributes are allowed:
- name
- marginX / marginY : margin bettwen the elements contained in the row.
- rows: number of rows of elements. If you set it up to -1 the number of rows is infinite.
- minheight: minimum height of the row (use recomended with dinamically sized rows due to contents like all contactswith photo or runningapps or recent)
- mincolwidth:
- scrollingmode: one of [Paged, WheelOfFortune, Direct, Kinetic, Auto, None]
- alignment: one of [left,right,center]
Example:
Code:
<row name="Programs" marginX="5" marginY="1" rows="3" scrolling="Paged">
footer: Must be placed inside the root tag. It parametters are exactly the same as the row. The footer is common for all the pages. Only one footer can be especified.
icon: Must be used inside the row tag or the footer tag. Used to display an icon. The allowed attributes are:
- name: Will be shown in the OSD when the icon is selected.
- path: path of the icon file. Recomended to use png. Can be absolute or relative to the app path. If the path is not specified, then the file on exec (if it's exe or lnk) will be used to obtain the icon image. No zooming efect will be applied in this case.
- exec: file to execute when the icon is clicked (deprecated, use event click instead).
- params: params for the file execution (deprecated, use event click instead).
- width: override the icons width.
- height: override the icons height.
- rowspan: indicates that the icon fills that number of rows intead of 1.
- showtext: will display the name of the icon as footer text.
Example:
Code:
<icon name="New Contact" exec="\windows\poutlook.exe" params="contacts -new" path="icons\contact.png" />
separator: must be especified inside a row or a footer. Allowed attributes are:
- name: if especified will show a vertical oriented text. If not especified the separator will show a vertical line.
Example:
Code:
<separator name="Personal" />
continues
text: Must be especified inside a row or a footer. Used to show text. Inherits all the atributes of the icon (so background icon can be displayed) plus:
- text: contains the text to be shown. The ~ symbol can be used for "new line", and two especial sentences:
* date: #$date,format#. Will be replaced by the date in the format especified. Will be updated automatically every second.
* reg: #$reg,key#. Will de replaced by the value of the desired key. Will be updated every second. When regkey is especified you can also use this format to parse date registry values: #$reg,key,date,dateformat
Example, start date for next apointment: #$reg,HKEY_CURRENT_USER\System\State\Appointments\Next\Start Time,date,MMM/dd/yyyy hh:mm#
- fonttype: font type specified by "fontname,size,bold" or "size,bold".
- fontcolor: RGB value.
- leftmargin: margin left of the text.
- topmargin: margin top of the text.
- spacing: interline spacing.
- textwidth: defines the width of the area filled by the text
- textheight: defines the height of area filled by the text
- textimages: defines a path where you can place images for each caracter on the text. Example: textimages="setups\Touchflo3d\icons\tf3d\numbers\#$char#.png" where #$char# will be replaced on the path for the character.
Example:
Code:
<text text="#$date,HH:mm:ss#~#$date,dd/MM/yy#~#$date,ddd#" fonttype="12,true" fontcolor="255,255,255" leftmargin="10" topmargin="10" spacing="-10" rowspan="3" width="100"/>
clock: must be inside a row or a footer. Inherits all the attributes of the icon. Can contain the following tags:
- hours
- minutes
- seconds
Each of those tags can contain a color attribute with the color in RGB for the line. If some of those tags is not especified, the respective line will not be shown.
Example:
Code:
<clock name="clock" path="clock.png" rowspan="3">
<hours color="0,0,100"/>
<minutes color="100,100,200"/>
<seconds color="160,160,255"/>
</clock>
allcontactswithphoto: must be inside a row or a footer. Will display all contact with photo matching the criteria in the attributes and assigned to the category "ThrottlePhotoDial".
- name: name of the tag element.
- categoryfilter: comma separated list of contact categories to be included on the filter.
- showcategories: If true will automatically show a separator for each category containing contacts.
- max: max number of contacts to display.
- width/height: define the diaplay size of the contact photos.
- All contacts with photo tag may contain two special icons with this two exec values: ":addcontact",":removecontact". This icons will open a contact selecting dialog allowing to choose a contact to asign or remove the "ThrottlePhotoDialer" category.
Example:
Code:
<allcontactswithphoto height="80" width="60" max="100" showcategories="True" name="Group unnamed">
<icon name="New Contact" exec=":addcontact" rowspan="1" height="80" width="80" path="setups\Default\icons\contact_add.png" />
<icon name="Remove Contact" exec=":removecontact" rowspan="1" height="80" width="80" path="setups\Default\icons\contact_del.png" />
</allcontactswithphoto>
lastapps: must be included inside a row or a footer. Will display the last 12 apps executed (same shown in the start menu). Can include the following attributes:
- name.
- zoom: will zoom the icons if different than 1.
Example:
Code:
<lastapps zoom="1" name="Group unnamed" />
runningapps: will display the running apps icons. The following attributes can be included:
- name.
- zoom: will zoom the icons if different than 1.
Inside you can especify the app's to exclude from the list by using the exclude tag as shown in the example.
Example:
Code:
<runningapps zoom="1" name="Group unnamed">
<exclude name="\Windows\shell32.exe" />
<exclude name="\Windows\cprog.exe" />
<exclude name="\Windows\repllog.exe" />
<exclude name="\Windows\gwes.exe" />
<exclude name="\Windows\filesys.exe" />
<exclude name="\Program Files\ThrottleLauncher\ThrottleLauncher.exe" />
</runningapps>
continued....
folder: this will add an icon for each file cotained in the specified folder matching the pattern if any.
- zoom: zoom to be aplied to the icons.
- path: path of the folder to load. If the folder path is on the registry, you may specify the registry path (sample: HKEY_LOCAL_MACHINE\Explorer\CrossPlatformNavigationURL).
- pattern: pattern to be used to filter the files.
- recursive: indicates wether to look into subfolders (any subfolder loaded will generate automatically a spearator named as the folder).
- name
plugin: this is used to include a today plugin inside the main app (not the today plugin).
- name: name of the plugin to be used. Importan the name MUST be the name of entry in HKEY_LOCAL_MACHINE\Software\Microsoft\Today\Items\. ONLY PLUGINS BASE ON DLL's WILL WORK.
examples:
Code:
<plugin name="ADBWeatherPlus"/>
<plugin name="rlToday"/>
<plugin name="HTC Home"/>
<plugin name="BatteryStatus"/>
-throttleplugin: with this tag you can include 3rd party plugins for throttle launcher. For example you can include flash using the following:
<throttleplugin name="Reloj" path="#$THROTTLE#\Plugins\Flash\FlashPlugin.dll" height="90" class="FlashPlugin.FlashThrottlePlugin">
<param name="movie" value="#$THROTTLE#/Setups/Touchflo3dFlash/TWolf/Clock/horas_28_LITE.swf"/>
<param name="width" value="240"/>
<param name="backgroundpath" value="#$THROTTLE#\Setups\Touchflo3dFlash\TWolf\Clock/fondoReloj.jpg"/>
</throttleplugin>
Skins
Skins are based on xml file as config.xml does. Skin xml file may only contain param tag placed inside the root tag. All the params are optional, so if you don't need one, don't especify it!!
All files refenced by the skin.xml need to be placed on the same skin folder.
Params tag format is the following:
Code:
<param name="name" value="value"/>
The allowed names and it's values meanings are:
- trasparency: will allow trasparency for the skin. This means that if the skin is applied to a row the row background will be filled with the main setup skin texture.
- pagebackcolor: backcolor to be used as page background (only used for main setup skin).
- rowbackcolor: backcolor to be used on the rows (this will be used as the trasparent color if trasparency is specified).
- texture: relative path to the texture image to be used as page background.
- rowtexture: relative path to the texture image to be used as rowbackground.
- buttonback: relative path to the back image to be used on all clickable elements.
- selectionimage: relative path to the hover image to be used when an element is selected.
- buttonbackmargin: margin to be used between the buttonback image and the main element image.
- fontstyle: font style for the text displayed for example in the separators or the contact names. Two formats can be used: "size, bold" or "size, bold, fonttype".
- linecolor: color to be used for lines. Must be specified in an RGB value.
- textcolor: color for text. RGB
- osdtextcolor: color for OSD text. RGB
- osdbackcolor: color to be used as the OSD back color. RGB.
- osdfontstyle: font style for the text displayed in the OSD. Two formats can be used: "size, bold" or "size, bold, fonttype".
reserved.......
reserved.....
Thanks, APBilbo, for sharing this. Really appreciate your help towards the community.
Thanks a lot!!! I really love this app. Its the best one I have found so far. I would be surprised if Verizon and T-mobile dont start using this in the phones they sell...
I wish I had the time to create using ThrottleLauncher, I guess I'll leave it up to the pro's. Thanks for sharing your knowledge.
I just found out that if you add a TalkURL Registry String with a link to an app shortcut to any CHome Directory with ACTIONURL/SK2URL in it. It will launch the linked value when pressing the Green Send Button aka the "Call Button" instead of opening the Phone App.
Example:
Code:
HKLM:Software\Microsoft\CHome\TitaniumWeather\Page1
String
TalkURL = \Windows\Powerexe.exe
NOTE: CHome must be Refreshed after adding/editing this value.
EDIT: Added the Text file I made from extracting all the text out of the cmhome.dll. This is how I've been able to make buttons & found this hack. This text is the root to hacking CHome.
Donators to Date:
Code:
[COLOR="Blue"]generalmills $200 CAD[/COLOR]
great find! thank you again
grate pound
I can change the tools of my plugin now
Hi drkfngthdragnlrd, I think you are, very good for programming "Titanium" Plugins. We have many progs like SPB Weather or Traveller or whatever with a *.dll plugin for the today screen. Do you think it is possible, to create a Titianium Plugin there we can integrate such a *.dll plugin ?
NEO130 said:
Hi drkfngthdragnlrd, I think you are, very good for programming "Titanium" Plugins. We have many progs like SPB Weather or Traveller or whatever with a *.dll plugin for the today screen. Do you think it is possible, to create a Titianium Plugin there we can integrate such a *.dll plugin ?
Click to expand...
Click to collapse
It could be possible I guess. There is mention of SourceType="DLL" in the CHome DLL.
For example in Images;
Code:
<Image ID="ButtonUp" Width="195" Height="186" Opacity="0.0" ScalingAlgorithm="TriLinear" [COLOR="#0000ff"]SourceType="[COLOR="Red"]ImageSourceType[/COLOR]"[/COLOR] [COLOR="Blue"]Source="[COLOR="#ff0000"]ImageSource[/COLOR]"[/COLOR] />
SourceType = NONE/FILE/BUFFER/BITMAP/ICON/DLL
Source = location of the source. If it's a DLL, it should be followed by a comma and the DLL Resource # (You'd have to open the DLL in question to get the resource number).
NOTE: I believe BITMAP/ICON refers to EXE's/DLL's type BITMAPs/ICONs as some have that in a seperate directory inside the EXE/DLL.
Same goes for Text, but SourceType = InnerTextType & Source = Text
InnerTextType = Resource
Text = "Static Text" or "DLL,(Comma) Resource #)
EDIT/NOTE: The Custom Plugin GUID does not accept HARD CODED layouts in the cpr's with Source="what ever" in the line. It always wants to read a registry value. The only work around I found is if you are only using 1 page. Put the code outside of the <Layer ID="Page"></Layer> part of the expanded & condensed layouts.
Example;
Code:
[COLOR="Red"] <Layer ID="TitaniumWeatherCondensed" Visible="False" Width="45" Height="39">[/COLOR]
<!--Icon Image-->
[COLOR="Blue"] <Image ID="Icon" Left="2" Top="4" Width="31" Height="31" ScaleStyle="Stretch" Source="\Neo\Neo_Weather.png" />[/COLOR]
[COLOR="#ff0000"] <Layer ID="Page">
</Layer>
</Layer>[/COLOR]
??????????????? thanks, but this is the look like for me. What I or we need is a normal Titanium Plugin cab, in this we have a menu that we told them where the *.dll Plugin from the program is. I hope you understand my lazy wish.
This could be interesting for another purpose, drgn.. I should make a little investigation.
Another question - have you ever seen a possibility to change the angle or the opacity of an image by a registry value instead of hardcoded in a .plg?
Micha
MichelDiamond said:
This could be interesting for another purpose, drgn.. I should make a little investigation.
Another question - have you ever seen a possibility to change the angle or the opacity of an image by a registry value instead of hardcoded in a .plg?
Micha
Click to expand...
Click to collapse
I have not figured that out yet. If possible, I'll see if I can figure it out.
Cool - you know what it would mean, if that would be work - in combination with the buttons - I don't think that then anybody would use TouchFlo anymore...
Hi 2 All,
here like promised the Example how to use JMLPanex for your Plugin - and at the same time an Explanation of some Titanium-Fuctions, you perhaps don't know - and a new JMLToday-Skin... and a new JMLLibrary from me later on.
So something which could also make JMLToday-Skinner gives the Infos to make powerful Skins... because I only explain the Basics... you will see, there's much more possibilities then (especially with JMLToday 5.4 together with JMLLibrary 0.3)
Everything I will explain - is based upon
JMLPanex 0.98...2.10 and above ( http://forum.xda-developers.com/showthread.php?t=552373 )
JMLToday: *klick here*
JMLLibrary: *klick here*
You can have each Titanium-Plugin with workable Buttons!!! And that's easy! Also as User - but easpecially the Plugin-Makers will recognize the use of this revolutionary Extension for our Titaniums!
The most of my Explanations will run already - for some things you must wait for the cab for JMLLibrary 0.3 (still testing it) und JMLToday 5.4 (beause of the notifications) - but it's good to have a future glimpse
The main reason is the integration of JMLPanex - which is important for all Plugins and JMLToday at the same time.
Will begin in Post #2 - here only some remarks - like FAQs to JMLs:
- The workable Buttons must be (0.98) inside the slider! Outside of it a tab wouldn't be recognized - indifferent if it's defined in .pnx or not
- It works with all Skins which uses TitaniumListView - it won't work with BronzeresListView!!! To know, if you have the correct format (TitaniumListView) and not the old one, which was originally made for Smartphones - ony look inside your .cpr - you will see it in the first 10 lines.
Or look on your Screen - if you have Space above your Top-Panel - it's TitaniumListView - if your Slider is not centered on all plugins - you have BronzeListView
- JMLPanex is Beta - and please report in JMLPanex-Thread any Bugs - not here!!! Also Integration in your ROM - it would be better in the JML-PanexThread than here - I could add some things later as HowTo. Here's the description and you can discuss about Styling Tipps / Skinning and so on
- It's written in C++ - and it doesn't need an additional process on your device! So no Battery Drainage or slowing down system like a running process! (and especially of course no 24/7-Mortscript which has side effects on your Titanium, and much more Battery Drainage and Performance-Loss than other processes)
So you can use JMLPanex in your ROM, too
Go on in Post #2
Micha
Let's start - and don't forget - i use JMLToday and JMLLibrary only as example - if you are making your own Plugin - it will work exact the same - and I would wish I would have each Plugin on my Handy with workable Buttons:
Let's have a look on our example - I made a new Skin for JMLToday:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
All quite the same you know?
No - everything on the Slider are Buttons!
With a tab on SMS you go into Messages, tap on phone to Phone History, tap on Wifi will toggle it on and off, tab#1 onBluetooth will switch it on, tap#2 will make it visible, tab#3 will switch it off again !
You can put EACH executeable File into JMLPanex and associate it with each Graphic- or Text-Item on your Slider! On each Plugin, you have installed
Let's have a look how it works - you know it from CHome-Editor - but we look direct in the Skin-File - it's in Titanium something with suffix ".plg" - mostlyb"default.plg" - in JMLToday it's <name of the skin>.plg
a little part of it:
Code:
<Layer ID="Page" Clip="False">
<!-- JMLToday : meteo Page1 -->
<Image ID="BGA" Left="64" Top="-170" Width="150" Height="150" ScaleStyle="Fit" Opacity="0.9"/>
<Image ID="HA" Left="64" Top="-170" Width="150" Height="150" ScaleStyle="Fit" Opacity="1.0"/>
<Image ID="MA" Left="64" Top="-170" Width="150" Height="150" ScaleStyle="Fit" Opacity="1.0"/>
<Image ID="BGAO" Left="274" Top="-170" Width="150" Height="150" ScaleStyle="Fit" Opacity="0.9"/>
<Image ID="HAO" Left="274" Top="-170" Width="150" Height="150" ScaleStyle="Fit" Opacity="1.0"/>
<Image ID="MAO" Left="274" Top="-170" Width="150" Height="150" ScaleStyle="Fit" Opacity="1.0"/>
<Image ID="CalPNG" Left="44" Top="-25" Width="390" Height="35" VerticalAlignment="Top" ScaleStyle="Stretch" Opacity="0.5" />
<Image ID="BattPNG" Left="10" Top="-185" Width="48" Height="52" ScaleStyle="Fit" />
<Image ID="[B]SmsPNG[/B]" Left="392" Top="30" Width="84" Height="72" ScaleStyle="Fit" Opacity="0.8" />
<Image ID="[B]TelPNG[/B]" Left="19" Top="24" Width="84" Height="72" ScaleStyle="Fit" Opacity="0.8" />
<Image ID="Icon" Left="152" Top="-70" Width="190" Height="190" ScaleStyle="Fit" />
<Image ID="AlarmPNG" Left="12" Top="112" Width="26" Height="26" Opacity="0.8"/>
<Image ID="AlarmPNG" Left="12" Top="112" Width="26" Height="26" Opacity="0.8"/>
<Text ID="Alarm" Left="42" Top="115" Width="340" Height="80" FontFamily="Tahoma" FontSize="6" FontStyle="Regular" Wrap="True" HorizontalAlignment="Left" VerticalAlignment="Top"/>
<Image ID="[B]WiFiPNG[/B]" Left="105" Top="45" Width="60" Height="60" Opacity="1.0"/>
<Image ID="[B]BlueToothPNG[/B]" Left="325" Top="45" Width="55" Height="55" Opacity="1.0"/>
<Image ID="EmailPNG" Left="212" Top="40" Width="80" Height="72" Opacity="1.0"/>
<Text ID="OperatorName" Left="152" Top="92" Width="120" Height="40" FontFamily="Tahoma" FontSize="7" FontStyle="Regular" Wrap="False" HorizontalAlignment="Right" VerticalAlignment="Middle">
<TextStage TextOffsetType="TextOffsetDropBottomRight" Color="#00000000" TextOffset="0" BlurFactor="0" Alpha="1.0"/>
<TextStage TextOffsetType="TextOffsetNone" Color="#FFFFFFFF"/>
</Text>
Some of them I marked bold. The .plg-File will be added to your .cpr-File of Titanium.
That's the Names of the Text or Graphic-Items - you can use. If you look into CHome-Editor on Page1 - you will find exactly this Names. With a path to the Graphic-File or a text entry.
And now - we look into the .pnx-File for JMLToday - so it's JMLToday.pnx and is to find in JMLPanex-Path:
Code:
[Page1]
default=%PROGRAMFILES%\JMLToday\JMLAction.exe
AlarmPNG=%WINDOWS%\ctlpnl.exe;cplmain.cpl,16,1
BG=%WINDOWS%\ctlpnl.exe;cplmain.cpl,16,0
BGA=%WINDOWS%\ctlpnl.exe;cplmain.cpl,16,0
EmailPNG=%WINDOWS%\tmail.exe;-service "ActiveSync"
SmsPNG=%WINDOWS%\tmail.exe;-service "SMS"
TelPNG=%PROGRAMFILES%\JMLToday\CallHistory.exe
BattPNG=%WINDOWS%\ctlpnl.exe;cplmain.cpl,3
WiFiPNG=%PROGRAMFILES%\JMLLibrary\JMLLib_toggleWIFI.mscr
BlueToothPNG=%PROGRAMFILES%\JMLLibrary\JMLLib_toggleBluetooth.mscr
Alarm=%PROGRAMFILES%\ageeye\G-Alarm\GAlarm.exe
OperatorName=%PROGRAMFILES%\JMLLibrary\JMLLib_restartRadio.mscr
You see all the Names - but linked with an application.
And that's all, what you have to do - look into your .cpr-File andyou know each Name of the Graphics - and your device will know this as Buttons - if ou actived JMLPanex.
The Activation is a simple Start of a Mortscript in JMLPanex-Installation-Path:
JMLPanexForPlugin.mscr
Start it - choose the Plugin, which you want - e.g. "FavoritePeople" - choose "All Pages" - and if you have made a FavoritePeople.pnx - then each Item will be associated with your personal wish, what you want to call!
Go on in #3
The way youcall, with or without Parameters - everything is already explained in JMLPanex-Thread:
It's explained in http://forum.xda-developers.com/showthread.php?t=552373 - Post #1 and #2 - so I mustn't repeat it.
I will only show you now some possibilities which you can do now - for this examples with JMLToday you will need the JMLLibrary 0.3 - because it's heavily expaned to use the Butons. In JMLToday the external calls to use from the Skinners are as Standard to make it easier in JMLLibrary.
Some of you will know the Weatherbackgroundchanger (http://forum.xda-developers.com/showthread.php?t=541434) from the Library, which changes your backgroundaccording to the current weather, or "isNight" which makes the Skinner easily able to make a day or night clock or so.
But in 0.3 there will be all to switch on Wifi,BT,GPRS,Phone-Toggle,... and also some more nice things.
It uses some free little apps - 2 credits I want to give at this place (in JMLLibrary-Download-Post for 0.3 then bigger ) :
- vj555 for VJVolublis and
- APBilbo for his little free standalone Tools from ThrottleLauncher
Thank you!
and of course some things are written mostly by me, JMHL or other members: *Wishlist for JMLToday/Library
Here's a possibility:
Hmm - you don't see something special?
The right picture shows the same PAge after pressing on one of the forecast-Icons - so you have easily a weather panel - which later on perhaps with the long version of weather - on one Page! Buttons make it possible
Only added some JMLLibrary-Functions in .pnx:
Code:
[Page2]
default=%PROGRAMFILES%\JMLToday\JMLMeteo.mscr
Icon1=%PROGRAMFILES%\JMLLibrary\JMLLib_forecastGlimpseDay1.mscr
Icon2=%PROGRAMFILES%\JMLLibrary\JMLLib_forecastGlimpseDay2.mscr
Icon3=%PROGRAMFILES%\JMLLibrary\JMLLib_forecastGlimpseDay3.mscr
Icon4=%PROGRAMFILES%\JMLLibrary\JMLLib_forecastGlimpseDay4.mscr
In 0.98 it's not ossible to all Mortscripts with Parameters - because Mortscript has a little strange way to be called - but we will see in next Verisons perhaps. But duplicating Mortscripts is the same as Parameters.
The Library only changes for 5 Seconds the Registry-Values of "IconA","TextA"... with "Icon1","Text1",...
Here's the main code for Switch for Day 2
Code:
# Made by MichelDiamond, 26.08.09
# Version 1.0
# Description:
# If you press a Forecast-Icon on Page2 - it will put the informations for 5 Seconds in the Main-Area - then switch it back
# Buttons must be correct linked with JMLPanex:
# following pathes are still the same - no need to change it if you make your own Library-Script - each script in /<Program-Path</JMLLibrary
LibraryPath = SystemPath( "ScriptPath" )
CommonGraphicPath = RegRead("HKLM", "Software\Microsoft\CHome\JMLToday","CommonGraphicPath")
EssentialGraphicPath = LibraryPath&"\Graphics\essential"
RegWriteDword("HKLM","Software\Microsoft\CHome\JMLToday","Updated","0")
glimpseday=2
# save entries for switching back
mainIconA=RegRead ("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","IconA")
mainTempA=RegRead ("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","TempA")
mainTextA=RegRead ("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","TextA")
mainDate2=RegRead ("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","Date2")
# and switch
rein=RegRead("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","Icon"&glimpseday)
RegWriteString("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","IconA", rein)
rein=RegRead("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","Temp"&glimpseday)
RegWriteString("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","TempA", rein)
rein=RegRead("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","Text"&glimpseday)
RegWriteString("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","TextA", rein)
rein=RegRead("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","Jour"&glimpseday)
RegWriteString("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","Date2", rein)
RegWriteDword("HKLM","Software\Microsoft\CHome\JMLToday","Updated","1")
Sleep(5000)
RegWriteDword("HKLM","Software\Microsoft\CHome\JMLToday","Updated","0")
# and back again
RegWriteString("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","IconA", mainIconA)
RegWriteString("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","TempA", mainTempA)
RegWriteString("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","TextA", mainTextA)
RegWriteString("HKLM", "Software\Microsoft\CHome\JMLToday\Page2","Date2", mainDate2)
RegWriteDword("HKLM","Software\Microsoft\CHome\JMLToday","Updated","1")
exit
Simple, ey?
But let's go to #4
only one more example - very interesting also for the JMLToday-Users and Skinners.
Sorry I only had less time to make the new Library and the Example (busied with TitaniumRSS - had to break Beta-Finalisation for 3 days) and so I want to apologize for the Button-Graphics... 'm sure that some Skinners will make them much nicer than a developer
Here's a JMLLibrary 0.3-Function which wil add Page3 to JMLToday... SMS as Example :
If somebody knows, where the contact pictures are to find in device - please tell me - I don't had time to search.
And some nicer Buttons, too
You have counted?
Right!
That's more than 20 Images in this JMLToday-Skin - the Titanium-Limit.
(at this place at first thanks to
drkfngthdragnlrd and our conversation and his great findings.
In TitaniumRSS I will use some more great things... be surprised perhaps... but now - how to overcome this 20-ITem-Limit?
A .plg (Skin-File) has nothing which describes the Page- it's indifferent for it - the more top an item is listed, the more below it's in display level... but PAges? No. Now have a look into CHome-Editor:
Left you see the Value "tempA" of Page2 - on the Right the Value "tempA" of Page3
In .plg - they are both the same! Compare Screenshots from Page2 (Weather) with (SMS-)Page3 - do you see it?
Each Icons are on the same place - but they have completely different Values.
so only add to .pnx:
Code:
[Page3]
default=%PROGRAMFILES%\JMLLibrary\JMLLib_SMS_Exit.mscr
Icon1=%PROGRAMFILES%\JMLLibrary\JMLLib_SMS_Next_Page3.mscr
Icon2=%PROGRAMFILES%\JMLLibrary\JMLLib_SMS_Previous_Page3.mscr
Icon3=%PROGRAMFILES%\JMLLibrary\JMLLib_SMS_Reply.mscr
Icon4=%PROGRAMFILES%\JMLLibrary\JMLLib_SMS_Refresh_Page3.mscr
And The Titanium-Limit with 20 Text and 20 Image-Items is because of the .plg. But not in Page... In Page4 Email , in Page5 System-Info? No Problem - if you use the same Positions and the Icons of the plg (I could also use the items you have seen in Page1 and Page2 all together ) - so if you are creative (and Skinners are creative ) - you can make extraordinary Skins - and the Pages3,4,5,... are supplied by JMLLibrary-Functions, which you can choose - or make a new one and I will add it...
And then there's no need to change system-variables of Titanium, making crazy cab-Files.. and as Skinner - no need to know how Programs work - only call it
In JMLToday 5.4. each notification like SMS,Bluetooth, Phone, Wifi, Time,Weather, ... will have an interface to a Script, which a USer (or Skinner) can choose. Here - the JMLLIbr_SMS_Refresh.mscr in JMLLibrary wil be called from a new SMS-notifcation and will update automatically.
But in 5.3 you can already use it - but with manual refresh.
And back to JMLPanex - each Page can have it own Buttons... and this is Page3 - same Names, but different Page - and therefore JMLPanex is a real Killerapp! drkfngdrglrd and me had almost the same idea (*here*), but it's essential to be done - and JMHL made it in a very special and easy way - with no system performance loss or additional battery drain.
Thanx JMHL!!!
I hope some people find this HowTo helpful
Micha
ok-finished for the first time
OH - I've forgotten to say,that all from this example is uploaded in JMLLibrary - also with the sample .pnx and the JMLToday-Skin:
*click here*
And Thank you for saying Thank you for this HowTo and developing the Example
Micha
Thanks Micha! Just been a bit occupied and forgot to comment. This is a very useful guide, I am hoping to experiment more with the new functions when I get a chance, but thanks again, this is a big help to all developers/skinners.
You guys rock! Thanx I've got to see if I can get it working
10 mins later ...... it is awesome!
Looking good, will hopefully have time soon to update NeoTitanium & add JMLPanex & JMLToday includes some libraries. My question is though, it looks as though the button has to reside within the Focus Rectangle from what I understand for the ActionURL to be launched on tap. Am I correct with this? If so, maybe there's a way to add a OnAction to the <Layer ID="Page" tag of the expanded layout to "bind the whole layer to the Focus ActionURL. Since that is a value built it defined action, maybe we can bind it there. Then, we make the <Layer ID="Page" cover the entire Plugin if it falls outside the Focus.
Example (Based on my NeoTitanium);
Code:
<Layer ID="Page" [COLOR="Blue"]Left="45" Top="-114" Width="195" Height="268"[/COLOR] Clip="False" OnAction="[COLOR="Red"][B](Binding:HomeNav,FocusAction)?!?!?[/B][/COLOR]" >
In NeoTitanium the HavNav & Focus is only the left 45 pixels of the screen. My thought is something like this "might" give the rest of the screen the Focus action & therefore launching ActionURL outside of the Focus area. Will need to play with the OnAction Code to see if it will work & what is the correct code to use.
I hope you don't have overseen it: http://forum.xda-developers.com/showpost.php?p=4465671&postcount=47
@sleepyxda, jumba: Thank you
And what's good to know:You mustn't use Titanium_....cpr - - works with each other cpr, too. Tested it a little bit with Panex+Library
MichelDiamond said:
I hope you don't have overseen it: http://forum.xda-developers.com/showpost.php?p=4465671&postcount=47
@sleepyxda, jumba: Thank you
And what's good to know:You mustn't use Titanium_....cpr - - works with each other cpr, too. Tested it a little bit with Panex+Library
Click to expand...
Click to collapse
I saw, still trying, just a matter of figuring out what the process is called. It is a deffined action so should be possible.
Only remark for JMLToday V5.5. - it still works in the same way to skin Appointments and SMS (Post #4)
Cheers
Micha
[size=+2]Discontinued; but the hosts files below are always updated[/size]
This is a recompilation of registry hacks for Interop-unlocked Windows Phone devices.
I have tested this on my freshly hard-resetted Lumia 730; Windows Phone 8.1 GDR1 (Also tried on Win10 v14393.189 as of 2 weeks ago).
I have used CustomPFD to explore the whole WP Registry, I will update this thread if I find something new and unusual.
- Created registry values are tested while there are some that says 'create a value for this key', I did not include it without initial and further testing
- Most WPTweaker tweaks are not here though, I still haven't consulted them for replicating their list of tweaks. All of the tweaks below are the ones I always use/alter on my device.
- Several tweaks might still apply on W10M but I haven't tested it all yet.
- Useful things are in here, I will dig down further to add more to this thread
Credits:
- CustomPFD
- WP10 WPTweaker
- WPTweaker
________________
Code:
HKLM\SYSTEM\ControlSet001\Services
(Start: 4 (Disable), 3 (Manual), 2 (Automatic), 1 (System), 0 (Boot))
- DataCollection
- DiagnosticSvc
- DiagTrack
- dmwappushsvc
- DnsCache → You might want to disable this service if and only if you are using a large hosts file
- FeedbackSvc
- telrepsvc → Telemetry, haven't confirmed yet but somehow breaks clearing of Telemetry files in Storage
- telwatsvc → Telemetry
Code:
HKLM\SYSTEM\ControlSet001\Control
- WaitToKillServiceTimeout
Code:
HKLM\SYSTEM\Maps\Storage
- UseSmallerCache
Code:
HKLM\SOFTWARE\OEM\VolumeLimit
- EnableVolumeLimit
- VolumeLimit
Code:
HKLM\SOFTWARE\OEM\Nokia\Onboarding
(I do not know what this does)
- EnableNokiaCare
Code:
HKLM\SOFTWARE\Microsoft\CommandChannel\Internal
(Testing; Disables Push Notifications?)
- IsWNSEnabled
Code:
HKLM\SOFTWARE\Microsoft\DataCollection\Default\WifiAutoConnectConfig
(Disables Wi-Fi Sense)
- AutoConnectEnabled
Code:
HKLM\SOFTWARE\Microsoft\DeviceEncryption
(Testing; Bitlocker?)
- Enabled
Code:
HKLM\SOFTWARE\Microsoft\Internet Explorer
- Disable Display Inline Images → Enables IE's Show Pictures Automatically option
Code:
HKLM\SOFTWARE\Microsoft\Internet Explorer\GestureNavigation
(Testing; IE Swipe Gesture)
- FlickThreshold
Code:
HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\TabStore
(Testing; Max Tabs? I think this one is the tabs to be kept in memory, or else.. It will be unloaded)
- NumberToKeep
Code:
HKLM\Software\Microsoft\Messaging\GlobalSettings
- ShowSendingStatus → Useful if you want to see the "Sending..." status in your outgoing sms
Code:
HKLM\Software\Microsoft\PolicyManager\current
(Works like Group Policy Editor? Feedback in Settings now says Disabled by policy/administrator or something like that)
- ...\System\AllowTelemetry, it is set to 2. Setting this to 0 disables Telemetry and Feedback.
Code:
HKLM\Software\Microsoft\SEMgr\UI
(NFC Settings)
Code:
HKLM\Software\Microsoft\Shell\CustomHoldDelays
(Contains Hold Delays for touch taps, higher=longer tap to activate)
Code:
HKLM\Software\Microsoft\Shell\NavigationBar
- IsBurnInProtectionEnabled → This is the one that makes your software navigation bar grayish
- IsDoubleTapOffEnabled → This option is hidden in the Navigation Bar settings for Windows Phone 8.1 GDR1 users, double tapping the navbar will lock/turn-off the screen; good for hardware key prolongation
Code:
HKLM\Software\Microsoft\Shell\Start
(Tile Flipping Delay)
- NotificationCycleTimer
Code:
HKLM\Software\Microsoft\SQMClient\Windows
(Windows Customer Experience Improvement program)
- CEIPEnable
Code:
HKLM\Software\Microsoft\Windows\CurrentVersion\Control Panel\Theme
(Use 59, 64, or 75)
- UserPreferenceWidth → 75 in my device gives 5 Quick Settings instead of the usual 4
Code:
HKLM\Software\Microsoft\Windows\CurrentVersion\Audio
(Testing; Allows compressed format like FLAC?)
- AllowCompressedFormatSupport
Code:
HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- ReceiveTimeOut
- SendTimeOut
Code:
HKLM\Software\Microsoft\Windows\CurrentVersion\WINEVT\Channels
(Testing; Event Logging)
~ I tried setting Enabled to 0, I do not see/feel any changes though.
Custom Hosts file
hosts sources are now posted here.