omegaui / cliptopia

Cliptopia is a beautiful state-of-the-art clipboard management software for linux desktops that turns your simple clipboard into a full-fledged ⚡power house⚡
BSD 3-Clause "New" or "Revised" License
111 stars 2 forks source link

feat: Android application, with sync functionality #25

Open ZhymabekRoman opened 10 months ago

ZhymabekRoman commented 10 months ago

I think this will be very useful.

omegaui commented 10 months ago

Sounds like a very good idea. But doing this on a platform like android is kinda tough. Android is open source but for each mobile selling companies like Samsung, have their own custom-rom built on top on android.

And by this I mean, a custom layer of security. For example, even if We implement a flutter method channel to pick files on Samsung, we cannot achieve picking multiple files at once, Samsung doesn't allows it via method channel.

Flutter has very little built-in support for Clipboard, and I don't know whether android allows listening to clipboard for non-textual data.

For creating a software like Cliptopia for mobile devices, Flutter is not a framework of choice as of Today. I'll see if we can implement a stable method channel for this, but it would be very experimental and limited on different roms.

omegaui commented 10 months ago

Also, we would be needing a background service to populate the app database with clipboard contents even if the app is not running.

omegaui commented 10 months ago

I'm currently focussed on making Cliptopia more user friendly and feature rich to improve accessibility within the app.

ZhymabekRoman commented 10 months ago

Okay, I understand that. I have some experience in writing Flutter projects, and some experience in Java.

Also, we would be needing a background service to populate the app database with clipboard contents even if the app is not running.

Yeah, that would be a big problem with tablet ROMs like Lenovo's. Lenovo has one of the most aggressive OOM killers. It simply kills all processes, even if the battery saving mode for the application is disabled.

For example, even if We implement a flutter method channel to pick files on Samsung, we cannot achieve picking multiple files at once, Samsung doesn't allows it via method channel.

That's interesting, I had something like that, but with Huawei phones. Some weird restriction in the file system (I think it was because of custom f2fs file system, idk).

I have in my home lab phones like Samsung, Xiaomi and tablet Lenovo, I think I can do some basic implementation in Java (or Kotlin) with some native "spicy" stuff, and test with my various phones.

And (probably) Windows platform support will be great (PS: I'm not a fan of MS stuff, but I see that Cliptopia has great potential, will be great to grow some user community).

Thanks!

omegaui commented 10 months ago

I have in my home lab phones like Samsung, Xiaomi and tablet Lenovo, I think I can do some basic implementation in Java (or Kotlin) with some native "spicy" stuff, and test with my various phones.

That would be great if you want to try that.

And (probably) Windows platform support will be great. I'm not a fan of MS stuff

Yes, me too. Windows already has a clipboard manager and Power Toys tool, also, for creating an software like cliptopia for windows requires some .NET integration too, that would be very tough, also I do have a Windows 11 system which I is use for launching VMs, (virtualbox doesn't supports Ubuntu 23.10), my personal experience says that flutter isn't that smooth on windows as it is on others, in terms of both performance and libraries.

Also, Cliptopia isn't complete yet

See, Cliptopia works on Host Performance Stability
X11 Super Smooth Stable
XWayland Super Smooth Stable
Wayland Smooth but #16 Unstable
Gnome on Ubuntu Super Smooth Stable
X11 based Window Managers (OpenBox, etc) Super Smooth Stable
Wayland based Window Managers (Sway, etc) Smooth (#16) Unstable

Now the my main concern now a days is to implement the wl-roots based feature to fix #16.

This will make cliptopia stable on every wayland native windows managers out there, and ultimately on all linux distros.

When cliptopia gets stable here on my home platform, I'll then focus to grow it on other platforms too.

Also, a community is all I want to create by building Cliptopia.