it's so cool could you decrease memory usage and maybe use something that permit the service to stay up but not having notification?Colors? Nah - keeping it simple is the best. And I've never seen a screen without at least a slim black bezel around it. Not even the white Samsung Galaxy S3/4 and Notes have a white bezel - there is a black outline around it.
Anyway, here's a cool picture!
it's so cool could you decrease memory usage and maybe use something that permit the service to stay up but not having notification?
Nice app
Would be great if you could implement it on the lockscreen as well
OK for the Mandatory Notification, but what about memory?Lol without notification? No. Impossible. Obviously you haven't clicked the notification option in settings lol. And also no. Floating apps use memory especially since the corners are anti aliased. My devices have 1800mb of ram so not an issue for me or most of the people that have the app. Its a free app dude, cmon.
Not allowed by android.
Sent from my Nexus 10 using xda premium
Oooooo, lag is away! Thank you.Latest Sidebar Pro + RoundR: very laggy notification drawer, when pull it down.
OK for the Mandatory Notification, but what about memory?
i know it's a free app it was just a nice to have anyway, the is well done and the round effect it's so cool!!!
okdon't worry i'll change my OLD OLD gnexI wish I could do something about the memory problem. I'll try to explain as simply as I can:
The 4 floating overlays have an ImageView with a 512x512 pixel image of a corner that it resizes to fit inside the window. The 512x512 image is saved in RAM probably 4 times, resizing which probably takes even more RAM, and then the notification icon takes some RAM, on top of which the floating windows take some RAM as well. 14mb is really low for a floating app, usually they can go up to 20 to 30mb.
But in a world where most modern phones have 2GB of RAM, 14mb is only about 0.68% of the usable RAM. That's not even 1%
I wish I could do something about the memory problem. I'll try to explain as simply as I can:
The 4 floating overlays have an ImageView with a 512x512 pixel image of a corner that it resizes to fit inside the window. The 512x512 image is saved in RAM probably 4 times, resizing which probably takes even more RAM
What about using a Path via Shape/ShapeDrawable?
http://developer.android.com/reference/android/graphics/Path.html
Should use way less memory than bitmaps.
As a bonus, that would give you an easy path to colour selection (stroke/fill) if you were inclined to implement that for people with custom themes.
Really cool!
If it were run as a service, would that be better? No need for notification icon? Hit lock screen as well?
Minimum dp radius will differ from device to device. Lower, smaller screen devices may show nothing below 20, for example.
Update v1.0.1
- Fixed boot receiver bug
Update v1.0.5
- Added more options in settings
Update v1.5.1
- Added extra settings
Update v1.5.5
- Small bug fix
- Changed default radius to 10dp
- Perfection
Update v1.6.1
- Anti-Aliasing
- Fixed start on boot
- Added low priority notification
- Apache license on source code
Update v1.7.1
- YouTube fullscreen bug fixed
- Support added for expanded desktop
- New icon!
- Settings animation removed\\
Update v1.8.1
- Battery & RAM optimized far more
- Anti-Aliasing improved by many orders of magnitude
- Cleaner looking notification
Update v1.9.9
- Lock screen support
- Touch underneath corners
- Final optimizations
- Update radius as changing
Update v2.0.0
- Added option to not overlap the notifications
Major Breakthrough v2.5.0
- Fixed bug with fullscreen YouTube and fullscreen video players
- Battery usage minimized greatly
Update v3.0.0
- Updated the Settings UI with standard Android settings
Update v4.0.3
- Renamed to Roundr
- Added developer info in settings
- Option to remove notification using root
Update 5.0.1
- App updated to support Roundr Extensions
- Roundr Extensions allows for 10 new corners
- Added peel dark corner style for extensions
Update 5.0.2
- Added support for blacklisting apps. Now you can specify which apps get rounded corners!
final static Bitmap createRoundCornersBitmap(int radius, int color, float hardness, boolean antialias)
{
int width = radius * 2;
int[] pixels = new int[width * width];
float halfSize = radius;
double oneMinusHardnessFactor = 1 - hardness;
{
int index = 0;
int pixel = 0;
for (int i = 0; i < width; i++)
{
for (int j = 0; j < width; j++)
{
float hDistance = ((float) i) - halfSize + 0.5f;
float vDistance = ((float) j) - halfSize + 0.5f;
double distance = Math.sqrt ( (hDistance * hDistance) + ((vDistance * vDistance)) );
pixel = color;
if (distance < halfSize)
{
double factor = distance / halfSize;
// double opacityFactor = 1.0f;
double opacityFactor = 0.0f;
if (factor > hardness)
{
factor = factor - hardness;
factor = (factor / oneMinusHardnessFactor) * Math.PI / 2;
// opacityFactor = 1 - Math.sin ( factor );
opacityFactor = Math.sin ( factor );
}
if (antialias)
{
pixel &= 0x00FFFFFF;
pixel |= ((int) (opacityFactor * 255)) << 24;
}
else
{
pixel &= 0x00FFFFFF;
// pixel |= 0x00000000;
}
}
else
{
// pixel &= 0x00FFFFFF;
// pixel &= 0xFF000000;
}
pixels[index] = pixel;
index++;
}
}
}
Bitmap bitmap = Bitmap.createBitmap ( pixels, width, width, Config.ARGB_8888 );
return bitmap;
}