Sunday 15 March 2015

The CyanogenMod Theme Engine


CyanogenMod makes it easy to quickly customize & change the look of your UI, allowing you to really make your device your device.  As someone that loves to tinker, I like to know how things actually work and I wanted to explain how themes actually work in CyanogenMod.

TO download the os click this link Cyanogenmod
At the most basic level, themes are simply a mechanism to allow resources to be replaced at runtime (as opposed to compilation time – the time when the build is created on the buildbots).

I’ll get into more details about resources, but for now just think of them as the elements which make up the application’s UI.  Whenever an application is started, Android loads up the resources associated with that app and the application makes requests for these resources.

That’s the normal flow of retrieving resources, but what happens when a theme is applied?  When the system loads the resources for the application, it checks if there is a theme applied and if there is, it adds the themed resources to the original resources.  This is the point at which the magic happens.  When the app requests a resource, the system will check if there is a themed version of it and if so, returns the themed resource, and if not it simply returns the original.  The key point here is the original resources are never modified/moved/altered, the system simply returns a resource from the theme instead of the original.  As you can see in the diagram below, there is no difference as far as the application is concerned.
I’m sure by now you’ve realized that this process doesn’t actually involve any actual magic, so how does the system know which themed resource to replace an application resource with?

This is done by leveraging a framework known as Runtime Resource Overlays, which was contributed to AOSP by Sony in 2014. Part of the RRO framework is a tool called IDMAP.  IDMAP inspects the resources in an application and compares the resource types and names to those in the themed resources.  For those resources that match it stores a mapping of the original resource to the matching resource in the theme.  Once this process is complete we are left with an efficient way to determine if a resource is themed and where that resource resides.

Okay I’ve put off getting into more detail about resources long enough so let’s dive in.

Resources can range from images such as JPEGs or PNGs, XML that defines how things should be laid out on the screen, XML that define various color values that can be used to color text or highlight buttons, and even more XML that describe animations.  The list goes on but there are a couple of resources that warrant a bit more explaining.  One of those is the nine patch image.

A nine patch is a PNG image that has special markers around the borders that tell Android how it can stretch and place content within the image.  Because analyzing those borders at runtime would take a bit of unnecessary processing, the image is processed and the border is removed and encoded into the image at build time.  Android can then quickly read that information and know exactly how to handle the image.  Android also likes to have all the plain text XML that the application developer has written converted it into a more efficient binary format that can be read a lot faster at runtime.  The final step that needs to be done to the resources is to create a special file that indexes all of the applications resources so that they can be quickly retrieved by the android framework.  Fortunately this is not a manual process, as there is a tool called the Android Asset Packaging Tool, AAPT for short.

Now that we’ve got an understanding of how themes work at the framework level, and we know what resources are and what makes Android resources so special, let’s look at what makes our Theme Engine so unique.  With the original implementation of the RRO (from Sony), for every application that you wanted to theme you needed to create a theme just for that app.  Sony’s method also doesn’t account for items like changing fonts, or some of the XML elements – it is primarily just overlays. We wanted theme designers to be able to theme multiple applications for many more elements, just like they were able to do in the legacy theme engine from T-Mobile.

Every application has a unique name, known as the package name, that identifies it.  Fortunately Android has one place, an assets folder, that allows us to put all sorts of files and even create directories that can be accessed later by the application and by using directory names that match the unique package name of an application, a theme designer can include resources for many applications, all within one theme.  This was great but there was one problem.  Anything you place in these locations does not get processed like all the other resources do when an application is be built.  This meant we either needed to require the theme designer use special tools or go through a painstaking process just to get the resources created in the format Android likes, or we could let them easily drag and drop their themed resources into these folders and let the device do a bit of the heavy lifting at install time.  This is a very simple and convenient way for someone to create a theme without jumping through a lot of hoops, but that doesn’t mean a nice tool to create an efficient theme out of the box is out of the question ;) .  Letting the resources remain in their original format means we had to come up with a way to keep Android happy and not lose any of the efficiency that RRO provides.  To accomplish this we actually have a version of aapt that runs on the device, and is part of every CyanogenMod build.  When the theme is installed a special service goes through and creates the indexed resource file as well as processes the nine patch images and the XML.  We store this file on the device and that is what provides the themed resources that can be attached to an application at runtime.

There is one last topic I want to cover before I wrap things up.  Because we are allowing other designers to provide their themes to all the users, we had to make sure that themes were kept under control.  This meant we had to make sure some resources just could not be themed – things like textual resources or resources that provide the UI layouts, to name two of the big ones, should not be themed.  A malicious theme could easily replace the text of an app to make it appear like another app, aka spoofing.  An app could get updated and changed their layout and an old theme that is theming that layout could end up crashing the app.  We also have to make sure that if a theme omits some important resources or parts of resources  (eg. an incomplete theme), that we bring those in from the original Holo/Material themes.

We have a lot going on under the hood to try and maintain the peace between applications and the themes that give them a fresh coat of paint.  And just in case something does cause an app or apps to misbehave, we have a mechanism in place that will monitor for this and return the user to the default system theme so they can continue to use their device.

I believe our journey today has come to an end so I leave you with these parting words.  CyanogenMod is community driven and all this cool stuff I talked about has been provided to the community as open source! If you have ideas for improvements, find bugs/fixes or just want to take a look at the code, everything is available on the CyanogenMod Github. If you are interested in creating a theme, checkout the Theme Template to get started!

Thursday 5 February 2015

Microsoft Releases Universal Office 2016 Previews, Dig Them Here...!



Microsoft Office is one of the best products offered by the software giant. After the announcement of new and Universal Office apps for Windows 10, today Microsoft released the early builds of Word, PowerPoint and Excel for technical previews on devices running on Windows 10 Technical preview. The new Office will focus more on cloud-first, mobile-first philosophy. Let us take look at the new Office and the way to get it now.


What is Universal Office?

The Office for Windows 10 or Office 2016 is being called Universal Office because with the release of Windows 10, Microsoft wishes to bring an improved and similar Office experience to all devices. The new Word, Excel, PowerPoint, Outlook and OneNote apps for Windows 10 will be optimized for touch and mobile use.

These apps will work with ease on small screen devices. Microsoft writes on its Office Blog that these Universal Office apps will be pre-installed on small tablets and phones running on Windows 10 for free. These apps will also be available for download on Windows Store for other devices.


Check out the demonstration of the new Office 2016 universal apps for Windows 10 on a tablet below:


       


Microsoft has promised to continue the uncompromised and comprehensive experience on desktop. Let’s take a look at all new Universal Office 2016 apps in these pictures and new features:
Word for Windows 10:

Real-time collaboration of work, review and markup documents, new insight feature in Read mode brings extra online enhancements like pictures, references and definitions.
PowerPoint for Windows 10:

Use all new PowerPoint for beautiful presentations added with Ink Tool for real time annotation of slides.
Excel for Windows 10:

New touch-first controls are the highlights of new Excel, use it to create spreadsheets and analysis.
Outlook Calendar and Outlook Mail for Windows 10:
Improved authoring experience with brand new touch-first gestures which help you to have fun while working with your daily mail.
OneNote for Windows 10:

New version of OneNote helps you to record all your thoughts and to-do’s with the unswerving Office ribbon experience.

 Get the new Office 2016 apps here on Windows Store: WordExcel and PowerPoint

Monday 5 January 2015

Windows 10 release date, news & features and  how to download the Windows 10 Technical Preview

     watchout window's 10 technical preview Full launching event  



It’s already been confirmed that Microsoft will launch Windows 10 some time in the middle of 2015. A special event titled “The Next Chapter”, taking place on 21 January, is where Microsoft is expected to announced a more concrete time frame for Windows 10.
Windows 10 releases, news and leaks are breaking through at an impressive rate. To make sense of it all, and to cut through some of the garbage, below is everything you need to know about Windows 10.

Windows 10 latest news


31/12/14: Windows 10 will come with new "Spartan" browser

A report by Mary Jo Foley on zdnet.com shows that Windows 10 will not launch with IE 12 as expected, but come with a new lightweight browser codenamed "Spartan".

The new browser is expected to work on desktop and mobile, keeping it inline with the multi-platform Windows 10 mantra.

Little is known about what new features the browser with launch with, other than it will "look and feel more like Firefox and Chrome”. The Spartan browser will also support extensions and plugins in a similar way to its rival browsers.

18/12/14: Windows 10 now has 1.5m testers
Microsoft is very proud of the fact that it has 1.5m registered users testing Windows 10, 30% of which access the preview every day.
The graph below (produced by Microsoft) details the impressive growth in testers from Windows 7 to Windows 10.
"What does all this mean?" you may ask. Well, Microsoft was happy to highlight that too. The leader of Microsoft's Operating Systems Group's Data and Fundamentals Team, Gabriel Aul, said: "It’s terrific for us to see this, because that hardcore usage will help us fix all the rough edges and bugs".





16/12/14: Windows 10 will run Windows Phone apps
It’s long been the goal for Windows to become a multi-platform OS. So it’s not really surprising that a leaked Windows 10 screenshot reveals Windows will do just that.
A well-known Windows leaker, @AngelWZR, posted a screenshot from the Windows 10 Store. The image shows HTC’s Make More Space phone app being available for download on (what looks like) a PC, indicating that users will be able swap their apps seamlessly between phone, tablet and desktop.
As Windows 10 is still in Preview mode, it’s safe to say there are a few areas things that still need ironing out. This screenshot is an excellent example of such bugs, as it’s debatable as to whether it would be useful in a PC environment. Similarly, phone apps that require a SIM card to function - such as Whatsapp - also raise questions as to how the will work properly on a laptop or desktop computer. It is yet unclear how Microsoft plan to deal with these issues.
Windows 10 multi platform apps
15/12/14: Leaked Windows 10 Consumer Preview
leaked release of the Windows 10 Consumer Preview points towards a more beautiful and integrated OS.
The most notable updates in the release are the integration of Cortana throughout the OS as well as a heavy focus on a new Xbox app.
The Windows 10 Consumer Preview has also undergone significant design work. Notably the Taskbar is now non-transparent and features a Cortana search box. Apps such as Camera, Calculator, Photos, Settings and the Windows Store feel markedly improved; handily they can all be accessed from the redesigned Start Menu, too.
Windows 10 release date leaked
12/12/14: Windows 10 Consumer Preview could be on the way
Microsoft will reveal "the next chapter" of Windows 10 at a special all day event on 21 January 2015, with CEO Satya Nadella, Windows chiefs Terry Myerson and Joe Belfiore, and Xbox head Phil Spencer all delivering keynotes. Speculation is rife about what the big reveal could be, with a Consumer Preview version of the new OS a distinct possibility. 
9/12/14: Windows 10 could be a subscription-based OS
Despite rumours Windows 10 could be a free upgrade, much like Apple's operating systems, Microsoft COO Kevin Turner has indicated the new OS will be sold as a rolling subscription, much like its Office 365 cloud productivity service. This isn't the first time the prospect of a "cloud based Windows OS" has been raised - it was a very strong rumour in the run up to Windows 10's unveiling - but quite how the subscription system would work, and whether it could operate on a "freemium" model, hasn't been revealed.
17 /11/14: Windows 10 Tech Preview users revolt over OneDrive Sync
Windows 10 Technical Preview testers have hit out at the way selective sync for OneDrive, introduced just days ago, effectively renders the service useless. The issue stems from the fact that, with selective sync, the user has to choose at installation which files to sync to the cloud and which to store locally. This has caused irritation because it forces users to pre-empt what files they will want to use offline and which they are happy to access online only, rather than the current dynamic system of recently used documents being temporarily available on a device without an internet connection.

Windows 10 release date

At the launch of Windows 10 on 30 September, Microsoft said only that the release date of its new operating system will be in mid 2015, but has given a deadline of 15 April for the end of the Technical Preview - just two weeks before its annual Build conference.
A firm release date is expected to be given at Build 2015, however history suggests a consumer version will be available in the Autumn.
Previous Windows release dates:
Released to manufacturingGeneral release
Windows 8.127 August 201317 October 2013
Windows 81 August 201226 October 2012
Window 722 July 200922 October 2009
Windows Vista8 November 200620 January 2007
Windows XP24 August 200125 October 2001

Windows 10 Technical Preview

Windows Technical Preview is a work-in-progress version of Windows 10 intended for use by PC experts andIT professionals.
People who fall into these categories can join the Insider Programme, which gives early access to not just Windows 10 but all future versions of Windows.
Windows 10 check for updates
There are two versions of the Insider Programme - the fast ring and the slow ring. Those who are signed up to the fast ring get access to releases as they happen, with the understanding that they may be more buggy. The slow ring, meanwhile, still gives subscribers early access to the various builds of Windows 10, but waits until some of the more serious bugs have been ironed out.
The first update for Windows 10 Technical Preview, Build 9860,was released on 22 October and included a notification centre, which has been brought over from Windows Phone, a keyboard shortcut for moving apps between screens, a new animation for switching desktops, battery saving option, and data use monitor.
The most recent release, Build 9879, introduced three-finger gestures, as demoed by Microsoft OS group, Joe Belfiore,revealed at TechEd Europe, as well as selective syncing in OneDrive, a new charms icon, and the option to hide certain task bar buttons.

Windows 10 features

Continuum
Belfiore admitted that the "different environment" for Modern apps in Windows 8 was a problem for desktop and PC users, saying those on a mouse and keyboard should have their "familiar UI".
To address that, using a new system dubbed Continuum, Windows 10 will automatically adjust itself depending on the type of device, offering a touch environment similar to the Start screen in Windows 8 for tablets and the standard desktop when a keyboard and mouse are present.
Phones running Windows 10 won't have the traditional desktop, however.
Showing off an early build, Belfiore said the aim was for Windows 7 users to have a "familiar experience", while still bringing in Windows 8 features and apps.
Start Menu
Apps that can be pinned include standard programs as well as "universal" apps, those that are downloaded via the Windows Store and can be used across any Windows device.
Apps from the Windows Store will run on the desktop in their own window, and can be resized and adjusted as though they were classic apps.
Windows 8.2 Start Menu
New multitasking features
Belfiore also demoed multitasking tools, including Snap Assist, which makes it easier to choose apps to snap together and suggests apps you may want to have open. You'll be able to snap up to four apps in a single window.
A new task-view button will make it easier to switch between open files and desktops.
Windows 10 Task View
Windows 10 will also let you create multiple desktops - for example, if you want a "work" desktop and a "personal" one, or desktops for different projects - which you can flip through to see what apps and files are open.
Windows 10 virtual desktop
Windows 10 also has a change for Command Prompt: you can now copy and paste into it, and select words and lines using the Shift key.
For touch devices, the Charm bar will be staying, though Belfiore admitted it may "evolve" before Windows 10 is finished.

Windows 10: how to get Windows 10 Technical Preview

To get windows 10 Technical Preview, you'll need to join the Windows Insider Programme.
Microsoft launched the Windows Insider Program on 1 October, which offers access to the Technical Preview of Windows 10 for laptops and desktops. A preview for servers will follow later, though Microsoft didn't say when it would arrive.
Terry Myerson, vice-president of OS group, asked for feedback, calling for "enthusiastic fans to evaluate it with us" via the Insider Program. He added that Microsoft would reveal more details for consumers "early next year", and explain more about universal apps at Build in April, while Windows 10 itself will ship in the middle of next year, he said.

Friday 3 October 2014

Wednesday 24 September 2014

















The purpose of Linux Mint is to produce a modern, elegant and comfortable operating system which is both powerful and easy to use.
Linux Mint is the most popular desktop Linux distribution and the 3rd most widely used home operating system behind Microsoft Windows and Apple Mac OS.
Some of the reasons for the success of Linux Mint are:
  • It works out of the box, with full multimedia support and is extremely easy to use.
  • It's both free of cost and open source.
  • It's community-driven. Users are encouraged to send feedback to the project so that their ideas can be used to improve Linux Mint.
  • Based on Debian and Ubuntu, it provides about 30,000 packages and one of the best software managers.
  • It's safe and reliable. Thanks to a conservative approach to software updates, a unique Update Manager and the robustness of its Linux architecture, Linux Mint requires very little maintenance (no regressions, no antivirus, no anti-spyware...etc).

   Here is the download just click here

    Here is the user guide click here

Saturday 13 September 2014

Total Pageviews

Popular Posts

Site Traffic Live View

Powered by Blogger.