Coder Social home page Coder Social logo

crocgui's People

Contributors

a19901201 avatar gnuhead-chieb avatar howeyc avatar schollz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

crocgui's Issues

Android GUI should convert spaces to hyphens in the Receive Code

When typing the Receive Code on the on-screen keyboard on an android system the GUI should convert spaces automatically hyphens. This way one could avoid shifting the keyboard layout to special character input after each word. The current GUI v1.4.1 doesn't support this.

Sending multiple files requires round-trips through file picker

When sending multiple files through crocgui, I have to individually pick files one at a time, then re-open the file picker to grab another file. This can be a hassle if trying to send lots of small files in the same folder.

My phone is running LineageOS 16.0/Android 9 - to my knowledge, most of the gallery/file-picker APIs on newer API levels support multiple selections if the picker-intent is called with options to allow multiple selections.

Can't get this to work

I am trying to use this between my windows PC and my android phone. For Windows I downloaded the zipped croc binary v8.6.11-757ed18, on Android I use croc GUI v1.4.1 and croc v8.6.7. The windows PC is connected to the internet through USB tethering of the android phone.

on the PC I run croc send "g:\some file.txt"
that gives me a receive code

on the android phone I start croc (I leave all the fields in the settings in their default state), enter the receive code and get this error:
Receive failed: could not connect to : found no addresses to connect

Then I ran this with --debug a couple of times. I Realized that I must start the croc app on my Android phone after I execute the croc command on the PC and enter the receive code within 30 seconds, otherwise the croc session on the PC will time out and report the room empty (that's quite a tight time schedule, especially if you have to switch keyboard layouts on the android to type the hyphens). But even if all these preconditions are met, it still fails:

[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info]  2021/03/26 08:22:36 starting TCP server on 9010
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info]  2021/03/26 08:22:36 starting TCP server on 9009
[debug] 08:22:36 croc.go:392: host: '', port: '9009'
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info]  2021/03/26 08:22:36 starting TCP server on 9012
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info]  2021/03/26 08:22:36 starting TCP server on 9013
[debug] 08:22:36 croc.go:398: got host '' and port '9009'
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info]  2021/03/26 08:22:36 starting TCP server on 9011
[debug] 08:22:36 croc.go:400: trying connection to :9009
[debug] 08:22:36 tcp.go:100: client 127.0.0.1:64851 connected
[debug] 08:22:36 comm.go:59: connected to ':9009'
[debug] 08:22:36 tcp.go:452: strong key: 3174eb9a61fd73c8da372e636cd3c07dd68b444d5b10d2122d96a28bb10f1fc0
[debug] 08:22:36 tcp.go:464: sending password
[debug] 08:22:36 tcp.go:473: waiting for first ok
[debug] 08:22:36 tcp.go:188: strongkey: 3174eb9a61fd73c8da372e636cd3c07dd68b444d5b10d2122d96a28bb10f1fc0
[debug] 08:22:36 tcp.go:200: waiting for password
[debug] 08:22:36 tcp.go:223: sending '9010,9011,9012,9013'
[debug] 08:22:36 tcp.go:234: waiting for answer
[debug] 08:22:36 tcp.go:488: sending room
[debug] 08:22:36 tcp.go:497: waiting for room confirmation
[debug] 08:22:36 tcp.go:510: all set
[debug] 08:22:36 croc.go:417: banner: 9010,9011,9012,9013
[debug] 08:22:36 tcp.go:265: room sto has 1
[debug] 08:22:36 croc.go:418: connection established: &{connection:0xc000224000}
[debug] 08:22:36 croc.go:420: waiting for bytes
[debug] 08:22:36 tcp.go:104: room: sto
[debug] 08:22:36 tcp.go:105: err: <nil>
[debug] 08:22:36 tcp.go:118: checking connection of room sto for &{connection:0xc000098038}
[debug] 08:22:36 tcp.go:126: room: {first:0xc000094240 second:<nil> opened:{wall:13839421806842422952 ext:578294501 loc:0x12dec20} full:false}
[debug] 08:22:36 croc.go:445: got ping
[debug] 08:22:36 croc.go:420: waiting for bytes
[debug] 08:22:36 croc.go:314: establishing connection
[debug] 08:22:36 comm.go:59: connected to 'localhost:9009'
[debug] 08:22:36 tcp.go:100: client [::1]:64852 connected
[debug] 08:22:36 tcp.go:452: strong key: d01a5de54c00818156d7c1762d5a0f75f0f16b17774a18e40fdbd651d7dda178
[debug] 08:22:36 tcp.go:464: sending password
[debug] 08:22:36 tcp.go:473: waiting for first ok
[debug] 08:22:36 tcp.go:188: strongkey: d01a5de54c00818156d7c1762d5a0f75f0f16b17774a18e40fdbd651d7dda178
[debug] 08:22:36 tcp.go:200: waiting for password
[debug] 08:22:36 tcp.go:223: sending '9010,9011,9012,9013'
[debug] 08:22:36 tcp.go:234: waiting for answer
[debug] 08:22:36 tcp.go:488: sending room
[debug] 08:22:36 tcp.go:497: waiting for room confirmation
[debug] 08:22:36 tcp.go:282: room sto has 2
[debug] 08:22:36 tcp.go:298: starting pipes
[debug] 08:22:36 tcp.go:510: all set
[debug] 08:22:36 croc.go:317: banner: 9010,9011,9012,9013
[debug] 08:22:36 croc.go:324: local connection established: &{connection:0xc000098058}
[debug] 08:22:37 tcp.go:118: checking connection of room sto for &{connection:0xc000098038}
[debug] 08:22:37 tcp.go:126: room: {first:0xc000094240 second:0xc000212000 opened:{wall:13839421806842422952 ext:578294501 loc:0x12dec20} full:true}
[debug] 08:22:37 tcp.go:128: rooms ready
[debug] 08:23:02 tcp.go:100: client [fe80::b08d:2bff:fe41:abde%Ethernet 5]:48426 connected
[debug] 08:23:02 tcp.go:104: room: pinglkasjdlfjsaldjf
[debug] 08:23:02 tcp.go:105: err: <nil>
[debug] 08:23:02 tcp.go:112: got ping
[debug] 08:23:02 tcp.go:100: client [fe80::b08d:2bff:fe41:abde%Ethernet 5]:48428 connected
[debug] 08:23:02 tcp.go:188: strongkey: 9d05debb6b8891b9a69c1b179f0a9da384026f5aa186ecbded2685444465dd78
[debug] 08:23:02 tcp.go:200: waiting for password
[debug] 08:23:02 tcp.go:104: room:
[debug] 08:23:02 tcp.go:105: err: bad password
[debug] 08:23:02 tcp.go:107: relay-[fe80::b08d:2bff:fe41:abde%Ethernet 5]:48428: bad password
[debug] 08:23:06 croc.go:305: discoveries: [address: fe80::b08d:2bff:fe41:abde%Ethernet 5, payload: ok]
[debug] 08:23:06 croc.go:305: discoveries: [address: 192.168.230.205, payload: ok]

The android phone reports in the same sense:
Receive failed: could not connect to: [fe80:8597:f74c:28d5:778c%rndis0]:9009: incorrect passphrase

I assure you that I entered the correct password, including the hyphens between the words.

Unable to save received files

Hi, I'm using crocgui on a Xiaomi 11T with MIUI Global 12.5.5.

Whenever I try to send a file to my device it seems to download correctly, but after it finishes getting it, a file explorer pops up, and it doesn't show any way to save the file. If some screenshots or logs would be of help, I'm happy to provide them.

Make croc available in share menu

It would be nice, to have croc available in the share menu.
This would allow to share files or text from other applications (e.g. from a file manager or the gallery, or a link from the browser) easily.
image1

PLEASE REWRITE THE UI

Maybe make this app in kotlin, it would be so much better, curremtly the ui is extremely buggy and impossible to use, threre is also no way to resume transfer and change download location

Automatic Dark Mode

Hi!

It would be really nice if Dark Mode automatically enabled if the user has that on in their preferences. I didn't realize dark mode existed until reading the issue tracker here.

Android documentation on that can be found here.

[Feature] Cancel button

A cancel button would be necessary to suspend in case, needed. Currently, got to close the app and re-open it

Selecting a large file hangs UI

Selecting a large file in the file-picker (when sending a file) causes the UI to hang for some period of time. This appears to be roughly linear to the size of the file - a 400MB file hung the UI for 3 or 4 seconds, an 8gb one has hung the UI for well over a minute.

I'm not sure if the app is reading files into memory at the time they're selected for some reason, but I would imagine this isn't desired behavior in favor of streaming files into memory as they're sent.

Broken settings GUI on Android 11 (OxygenOS V11.3)

I have installed the latest croc (1.10.1) via F-Droid on my OnePlus Nord 2. It works but the settings look broken:

Screenshot_2022-01-31-21-10-02-73_0c31727280b74f78aaf91e6a8660278c

After tapping every single text field or checkbox, the content appears:

Screenshot_2022-01-31-21-10-19-37_0c31727280b74f78aaf91e6a8660278c

I don't know if this happens only on OxygenOS but at least I can tell that I didn't see such a behavior in other apps.

Add support for XEP-0174 (XMPP standard)

Issue has been moved to schollz/croc#556


For over a decade, XMPP clients can communicate over LAN and "mesh" by publishing their presence using Avahi (also referred to as "Zeroconf"); see XEP-0174: Serverless Messaging.

Avahi is a system which facilitates service discovery on a local network via the mDNS/DNS-SD protocol suite. This enables you to plug your laptop or computer into a network and instantly be able to view other people who you can chat with, find printers to print to or find files being shared.

Clients with XEP-0174 support: Gajim * and Kopete, and more...

* Support to Gajim will be restored very soon

Send text

It would be nice if Croc could send text like the cli can do with croc send -t "hi"

Add resume

It would be so great to have the option to resume files.
Also if I transfer a folder and I receive 10 out of 50 files and the sender aborts the transfer, the files are gone and nowhere to be found.

Android GUI should be scrollable

Currently the Android gui v 1.4.1 cannot be fully used in landscape orientation, simply because you can't scroll to the lower GUI elements. You only get to see the Relay Address and Ports. No access to anything below this. Unless you switch to portrait mode, but even then, depending on your phone model, you can see as low as Transfer Options: Disable Compression

could not transfer between anroid-10 and pc connected through wlan from dsl-router

I have just installed croc

All three computers are connected via wlan to the same dsl-router (and have a working connection to the internet)

  • works as expected: ubuntu -> ubuntu

  • works as expected: ubuntu -> windows7

  • not tested: windows7 -> ubuntu

  • error: android -> ubuntu

    • Error message on ubuntu: securing channel...2021/03/25 13:27:08 room not ready
  • error: ubuntu -> android

    • Error message on android: "could not connect to: found no addresses to connect"
  • error: windows -> android

    • Error message on android: "could not connect to: found no addresses to connect"

    since transfer ubuntu -> windows7 works i assume the problem lies on the android-10 side. Any ideas how to find out what went wrong?

do you know how the tranfer is done via tcp/ip ?

as far as i know android does not tolerate android-ip-server-ports below port 8000

Font for CJK

CJK characters such as Japanese text are not displayed correctly.
They should be replaced with fonts that can display multiple languages, such as Noto Sans.

Receive dysfunctional on Linux desktop

Sending works, Receiving works (into /tmp/crocgui-recvXXXXXXXX) but when the popup comes to select where to save, it is completely unclickable. Scrolling of the left pane and right pane works, tabbing is unresponsive, and the only thing I can click on are the crocgui window buttons for close/minimize/maximize.

Not sure if this is somehow related, but middle-click pasting into the Receive input line also doesn't work, only Paste from the clipboard.

Reduce APK size

The APK on F-droid is 50 MiB, that is really really big.

It would be nice if it was smaller.

[Feature Request] Swipe between tabs

It would be nice if the users could swipe between the tabs, it's rather intuitive on Android.

I have absolutely no experience with Go, so I don't know if it's even feasible.

Add a QR scanner to help with the croc code copy and paste. Accept PR?

Hi there, thanks for this app. I use it frequently to transfer files from my mac to android.

I would like to add a QR scanner as a feature. Will you accept my PR if i send in?

My current workflow is like this

  1. I use https://github.com/ytbryan/croc2qr to generate a code
  2. I use a QR code scanner. Copy.
  3. I open GUI for croc and paste in the code.

I hope the workflow becomes like this

  1. I use https://github.com/ytbryan/croc2qr to generate a code
  2. I scan the QR code using GUI for croc and it auto paste in the code.

Network Local

Hi,

Could you explain what is the Network Local setting?

Thank you.

Share send code

  1. Button to share the send code via share menu
  2. Button to create a QR code and integrate a QR code reader to transfer easy locally.

Input field issues on Android 11

Hello!

Hardware

  • Pixel 4a

OS

  • Android 11

Situation

I installed the app successfully and try to make some settings or receive some files.
When using the input fields, like for the host settings or the passphrase, I am able to type into the input field but I'm not able to remove typos or the whole passphrase. Even mark and cut didn't work sadly.

Wild assumption

Is it possible that fyne is not ready for Android 11 yet? Maybe things can be fixed using another type of input field? idk.

Thanks,

Bandie

Sending from Android device removes filetype

When sending an image/pdf, the file loses its filetype and its name changes to a 4 digit number. Not sure if this is intentional or a workaround of some sort, but its pretty annoying.

Accept whitespace as a substitute for dashes

Whitespace should be read as a dash when entered in a receive code. It doesn't occur in the regular word-list and is much easier to type on the Android keyboard than an actual dash.

how to send files without internet?

i tried the app and it worked fine on wifi network but it failed to do so when i connected the devices with hotspot without internet.
what settings do i need to change in order to transfer files over hotspot/network that doesnt has internet.
if required, i will share the error code.

Share sheet

Hello!

Thank you so much for this app! It makes sharing files from my computer and phone so much easier!

My only problem is just a minor inconvenience. From other apps, when I press Share, Croc doesn't show up. It would be really nice if Croc showed up there with my other messaging apps!

Regardless, great job with this app! It's much quicker for me than having to open Signal Desktop on my laptop every time I need to share a file,

Android GUI should wrap lines in log output

The Croc GUI v1.4.1 on Android does not wrap text then typing out the log lines. You have to enable screen rotation and rotate the screen to see a bit more of the log line, but even then some log outputs are not fully readable.

[Feature Request] Dark and AMOLED black themes

The title says it all. I rely a lot on dark and black themes on my phone.

Other apps do it like this:

  • [dropdown] Theme:
    • Light
    • Dark
    • Follow system
  • [checkbox] AMOLED dark theme

Or something along these lines (could be another wording)

Could be in an "Appareance" section in the settings tab

No filename when receiving

How to reproduce:

  1. Send a file with croc-cli or croc-gui
  2. Open crocgui, type in the receive code and click the download button
  3. Now the filemanager opens a dialog at download location and at the buttom there is an empty input field and a save button.
  4. The received file is called "(invalid)" without any type

Smartphone: Mi 9t Pro, MIUI Global 12.0.4.0 (QFKEUXM), Android 10
Crocgui version: 1.7.0 (same issue with 1.5.0 and 1.6.0)

Thank you and regards

Weird/scary app icon that doesn't match the apps purpose

Hello there, randomly saw this app on the f-droid starting page. Shortly looked at it, but the app icon distracts me from installing it. It's a really angry crocodile. It could be good on something like a Warez forum, but not on an app to privately share files :P.

Error while building

Hello,
I cloned the repository into my local disk, then ran go build .
This is my output:

go: downloading fyne.io/fyne/v2 v2.1.4
go: downloading github.com/schollz/croc/v9 v9.5.6
go: downloading github.com/godbus/dbus/v5 v5.0.4
go: downloading github.com/fsnotify/fsnotify v1.4.9
go: downloading github.com/fredbi/uri v0.0.0-20181227131451-3dcfdacbaaf3
go: downloading github.com/yuin/goldmark v1.3.8
go: downloading github.com/go-gl/glfw/v3.3/glfw v0.0.0-20211024062804-40e447a793be
go: downloading github.com/goki/freetype v0.0.0-20181231101311-fa8a33aabaff
go: downloading github.com/srwiley/oksvg v0.0.0-20200311192757-870daf9aa564
go: downloading github.com/srwiley/rasterx v0.0.0-20200120212402-85cb7272f5e9
go: downloading golang.org/x/image v0.0.0-20200430140353-33d19683fad8
go: downloading github.com/go-gl/gl v0.0.0-20210813123233-e4099ee2221f
go: downloading golang.org/x/net v0.0.0-20220517181318-183a9ca12b87
go: downloading golang.org/x/crypto v0.0.0-20220518034528-6f7dac969898
# crocgui
./send.go:209:16: assignment mismatch: 2 variables but croc.GetFilesInfo returns 4 values

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.