Browse Source

kivy: share button

283
ThomasV 9 years ago
parent
commit
5120c24a0b
  1. 34
      gui/kivy/uix/screens.py
  2. 12
      gui/kivy/uix/ui_screens/receive.kv

34
gui/kivy/uix/screens.py

@ -16,6 +16,7 @@ from kivy.uix.label import Label
from kivy.lang import Builder
from kivy.factory import Factory
from kivy.utils import platform
from electrum.util import profiler, parse_URI, format_time
from electrum import bitcoin
@ -293,25 +294,24 @@ class ReceiveScreen(CScreen):
qr = self.screen.ids.qr
qr.set_data(uri)
def do_copy(self):
from kivy.utils import platform
uri = self.get_URI()
if platform == 'android':
from jnius import autoclass, cast
JS = autoclass('java.lang.String')
Intent = autoclass('android.content.Intent')
sendIntent = Intent()
sendIntent.setAction(Intent.ACTION_SEND)
sendIntent.setType("text/plain")
sendIntent.putExtra(Intent.EXTRA_TEXT, JS(uri))
PythonActivity = autoclass('org.renpy.android.PythonActivity')
currentActivity = cast('android.app.Activity', PythonActivity.mActivity)
it = Intent.createChooser(sendIntent, cast('java.lang.CharSequence', JS("Share Bitcoin Request")))
currentActivity.startActivity(it)
def do_share(self):
if platform != 'android':
return
uri = self.get_URI()
from jnius import autoclass, cast
JS = autoclass('java.lang.String')
Intent = autoclass('android.content.Intent')
sendIntent = Intent()
sendIntent.setAction(Intent.ACTION_SEND)
sendIntent.setType("text/plain")
sendIntent.putExtra(Intent.EXTRA_TEXT, JS(uri))
PythonActivity = autoclass('org.renpy.android.PythonActivity')
currentActivity = cast('android.app.Activity', PythonActivity.mActivity)
it = Intent.createChooser(sendIntent, cast('java.lang.CharSequence', JS("Share Bitcoin Request")))
currentActivity.startActivity(it)
def do_copy(self):
uri = self.get_URI()
self.app._clipboard.copy(uri)
self.app.show_info(_('Request copied to clipboard'))

12
gui/kivy/uix/ui_screens/receive.kv

@ -89,15 +89,23 @@ ReceiveScreen:
size_hint: 1, None
height: '48dp'
on_release: s.parent.do_copy()
Button:
text: _('Share')
size_hint: 1, None
height: '48dp'
on_release: s.parent.do_share()
Button:
text: _('Save')
size_hint: 1, None
height: '48dp'
on_release: s.parent.do_save()
BoxLayout:
size_hint: 1, None
height: '48dp'
Widget:
size_hint: 1, 1
Button:
text: _('New')
size_hint: 1, None
height: '48dp'
on_release: s.parent.do_new()
#Widget:
# size_hint: 1, 0.3

Loading…
Cancel
Save