Merge pull request 'add peer / group pane' (#361) from dan/ui:addPeer into master
the build was successful
Details
the build was successful
Details
Reviewed-on: #361
This commit is contained in:
commit
0be9447a07
2
go.mod
2
go.mod
|
@ -3,7 +3,7 @@ module cwtch.im/ui
|
|||
go 1.12
|
||||
|
||||
require (
|
||||
cwtch.im/cwtch v0.4.7
|
||||
cwtch.im/cwtch v0.4.8
|
||||
git.openprivacy.ca/openprivacy/connectivity v1.3.1
|
||||
git.openprivacy.ca/openprivacy/log v1.0.1
|
||||
github.com/c-bata/go-prompt v0.2.3 // indirect
|
||||
|
|
2
go.sum
2
go.sum
|
@ -11,6 +11,8 @@ cwtch.im/cwtch v0.4.5 h1:BK4IMqCMf9xNmeLzaVDUbl2bnXdw5fOWXvEGBMTOjXM=
|
|||
cwtch.im/cwtch v0.4.5/go.mod h1:Mh7vQQ3z55+prpX6EuUkg4QNQkBACMoDcgCNBeAH2EY=
|
||||
cwtch.im/cwtch v0.4.7 h1:y8Roq1L1PAs0FkBDdk+7EUVLCHwyzl+dOEfVu4VX0Ic=
|
||||
cwtch.im/cwtch v0.4.7/go.mod h1:Mh7vQQ3z55+prpX6EuUkg4QNQkBACMoDcgCNBeAH2EY=
|
||||
cwtch.im/cwtch v0.4.8 h1:f/FIek3PkJMskLT+f7SpIjpjlp5hMspAnGguXC3SA8s=
|
||||
cwtch.im/cwtch v0.4.8/go.mod h1:Mh7vQQ3z55+prpX6EuUkg4QNQkBACMoDcgCNBeAH2EY=
|
||||
cwtch.im/tapir v0.2.0 h1:7MkoR5+uEuPW34/O0GZRidnIjq/01Cfm8nl5IRuqpGc=
|
||||
cwtch.im/tapir v0.2.0/go.mod h1:xzzZ28adyUXNkYL1YodcHsAiTt3IJ8Loc29YVn9mIEQ=
|
||||
cwtch.im/tapir v0.2.1 h1:t1YJB9q5sV1A9xwiiwL6WVfw3dwQWLoecunuzT1PQtw=
|
||||
|
|
111
go/ui/gcd.go
111
go/ui/gcd.go
|
@ -25,7 +25,7 @@ type GrandCentralDispatcher struct {
|
|||
QMLEngine *qml.QQmlApplicationEngine
|
||||
Translator, OpaqueTranslator *core.QTranslator
|
||||
|
||||
uIManagers map[string]Manager // profile-onion : Manager
|
||||
uIManagers map[string]Manager // profile-onion : Manager
|
||||
TimelineInterface *MessageModel
|
||||
|
||||
GlobalSettings *GlobalSettings
|
||||
|
@ -36,16 +36,16 @@ type GrandCentralDispatcher struct {
|
|||
m_selectedProfile string
|
||||
m_selectedConversation string
|
||||
|
||||
_ string `property:"os"`
|
||||
_ float32 `property:"themeScale,auto,changed"`
|
||||
_ string `property:"theme,auto,changed"`
|
||||
_ string `property:"locale,auto,changed"`
|
||||
_ string `property:"version"`
|
||||
_ string `property:"buildDate"`
|
||||
_ string `property:"assetPath"`
|
||||
_ string `property:"selectedProfile,auto"`
|
||||
_ string `property:"selectedConversation,auto"`
|
||||
_ bool `property:experimentsEnabled,auto,changed`
|
||||
_ string `property:"os"`
|
||||
_ float32 `property:"themeScale,auto,changed"`
|
||||
_ string `property:"theme,auto,changed"`
|
||||
_ string `property:"locale,auto,changed"`
|
||||
_ string `property:"version"`
|
||||
_ string `property:"buildDate"`
|
||||
_ string `property:"assetPath"`
|
||||
_ string `property:"selectedProfile,auto"`
|
||||
_ string `property:"selectedConversation,auto"`
|
||||
_ bool `property:experimentsEnabled,auto,changed`
|
||||
_ map[string]bool `property:experiments,auto,changed`
|
||||
|
||||
// profile management stuff
|
||||
|
@ -58,12 +58,12 @@ type GrandCentralDispatcher struct {
|
|||
|
||||
// server management
|
||||
_ func(handle, displayname, image string, status int, autostart bool, bundle string, messages int, key_types []string, keys []string) `signal:"AddServer"`
|
||||
_ func() `signal:"requestServers,auto"`
|
||||
_ func() `signal:"newServer,auto"`
|
||||
_ func(server string) `signal:"startServer,auto"`
|
||||
_ func(server string) `signal:"stopServer,auto"`
|
||||
_ func(server string) `signal:"checkServer,auto"`
|
||||
_ func(server string, enabled bool) `signal:"autostartServer",auto`
|
||||
_ func() `signal:"requestServers,auto"`
|
||||
_ func() `signal:"newServer,auto"`
|
||||
_ func(server string) `signal:"startServer,auto"`
|
||||
_ func(server string) `signal:"stopServer,auto"`
|
||||
_ func(server string) `signal:"checkServer,auto"`
|
||||
_ func(server string, enabled bool) `signal:"autostartServer",auto`
|
||||
|
||||
// contact list stuff
|
||||
_ func(handle, displayName, image string, badge, status int, authorization string, loading bool, lastMsgTime int) `signal:"AddContact"`
|
||||
|
@ -75,12 +75,12 @@ type GrandCentralDispatcher struct {
|
|||
_ func(handle, key, value string) `signal:"UpdateContactAttribute"`
|
||||
|
||||
// messages pane stuff
|
||||
_ func() `signal:"ClearMessages"`
|
||||
_ func() `signal:"ResetMessagePane"`
|
||||
_ func(mID string) `signal:"Acknowledged"`
|
||||
_ func(title string) `signal:"SetToolbarTitle"`
|
||||
_ func(signature string, err string) `signal:"GroupSendError"`
|
||||
_ func(loading bool) `signal:"SetLoadingState"`
|
||||
_ func() `signal:"ClearMessages"`
|
||||
_ func() `signal:"ResetMessagePane"`
|
||||
_ func(mID string) `signal:"Acknowledged"`
|
||||
_ func(title string) `signal:"SetToolbarTitle"`
|
||||
_ func(signature string, err string) `signal:"GroupSendError"`
|
||||
_ func(loading bool) `signal:"SetLoadingState"`
|
||||
|
||||
// profile-area stuff
|
||||
_ func(name, onion, image, tag, showBlocked string) `signal:"UpdateMyProfile"`
|
||||
|
@ -111,6 +111,7 @@ type GrandCentralDispatcher struct {
|
|||
_ func(onion string) `signal:"loadMessagesPane,auto"`
|
||||
_ func(signal string) `signal:"broadcast,auto"` // convenience relay signal
|
||||
_ func(str string) `signal:"importString,auto"`
|
||||
_ func(name, address string) `signal:"addPeer,auto"`
|
||||
_ func(str string) `signal:"createContact,auto"`
|
||||
_ func(str string) `signal:"popup,auto"`
|
||||
_ func(server, groupName string) `signal:"createGroup,auto"`
|
||||
|
@ -128,7 +129,7 @@ type GrandCentralDispatcher struct {
|
|||
_ func(onion string) `signal:"storeHistoryForPeer,auto"`
|
||||
_ func(onion string) `signal:"deleteHistoryForPeer,auto"`
|
||||
// chat
|
||||
_ func(mID string) `slot:"peerAckAlert,auto"`
|
||||
_ func(mID string) `slot:"peerAckAlert,auto"`
|
||||
|
||||
_ func(handle string) `signal:"requestServerSettings,auto"`
|
||||
|
||||
|
@ -251,7 +252,7 @@ func (this *GrandCentralDispatcher) sendMessage(message string) {
|
|||
}
|
||||
|
||||
if isGroup(this.SelectedConversation()) {
|
||||
if gf,err := groups.ExperimentGate(this.GlobalSettings.Experiments); err == nil {
|
||||
if gf, err := groups.ExperimentGate(this.GlobalSettings.Experiments); err == nil {
|
||||
groupHandle := this.SelectedConversation()
|
||||
this.TimelineInterface.AddMessage(this.TimelineInterface.num())
|
||||
err := gf.SendMessage(groupHandle, message)
|
||||
|
@ -351,7 +352,8 @@ func (this *GrandCentralDispatcher) requestPeerSettings(handle string) {
|
|||
|
||||
func (this *GrandCentralDispatcher) savePeerSettings(onion, nick string) {
|
||||
the.Peer.SetContactAttribute(onion, attr.GetLocalScope(constants.Name), nick)
|
||||
this.UpdateContactDisplayName(onion, nick)
|
||||
newNick := GetNick(onion)
|
||||
this.UpdateContactDisplayName(onion, newNick)
|
||||
}
|
||||
|
||||
func (this *GrandCentralDispatcher) storeHistoryForPeer(onion string) {
|
||||
|
@ -388,15 +390,11 @@ func (this *GrandCentralDispatcher) requestServerSettings(groupID string) {
|
|||
}
|
||||
|
||||
func (this *GrandCentralDispatcher) requestServers() {
|
||||
the.AppBus.Publish(event.NewEvent(constants.ListServers, map[event.Field]string{
|
||||
|
||||
}))
|
||||
the.AppBus.Publish(event.NewEvent(constants.ListServers, map[event.Field]string{}))
|
||||
}
|
||||
|
||||
func (this *GrandCentralDispatcher) newServer() {
|
||||
the.AppBus.Publish(event.NewEvent(constants.NewServer, map[event.Field]string{
|
||||
|
||||
}))
|
||||
the.AppBus.Publish(event.NewEvent(constants.NewServer, map[event.Field]string{}))
|
||||
}
|
||||
|
||||
func (this *GrandCentralDispatcher) startServer(onion string) {
|
||||
|
@ -427,7 +425,7 @@ func (this *GrandCentralDispatcher) autostartServer(onion string, enabled bool)
|
|||
value = event.True
|
||||
}
|
||||
the.AppBus.Publish(event.NewEvent(constants.AutoStart, map[event.Field]string{
|
||||
event.Onion: onion,
|
||||
event.Onion: onion,
|
||||
constants.AutoStartEnabled: value,
|
||||
}))
|
||||
}
|
||||
|
@ -478,13 +476,49 @@ func (this *GrandCentralDispatcher) createContact(onion string) {
|
|||
the.Peer.PeerWithOnion(onion)
|
||||
}
|
||||
|
||||
func (this *GrandCentralDispatcher) addPeer(name, address string) {
|
||||
|
||||
log.Debugf("importing peer: %s\n", address)
|
||||
name = strings.TrimSpace(name)
|
||||
address = strings.TrimSpace(address)
|
||||
|
||||
if len(address) != 56 {
|
||||
this.InvokePopup("invalid peer onion format")
|
||||
return
|
||||
}
|
||||
|
||||
name = strings.TrimSpace(name)
|
||||
|
||||
_, err := base32.StdEncoding.DecodeString(strings.ToUpper(address[:56]))
|
||||
if err != nil {
|
||||
log.Debugln(err)
|
||||
this.InvokePopup("bad format. missing handlers?")
|
||||
return
|
||||
}
|
||||
|
||||
checkc := the.Peer.GetContact(address)
|
||||
if checkc != nil {
|
||||
this.InvokePopup("already have this contact")
|
||||
return //TODO: bring them to the duplicate
|
||||
} else {
|
||||
the.Peer.AddContact(name, address, model.AuthApproved)
|
||||
if name != "" {
|
||||
the.Peer.SetContactAttribute(address, attr.GetLocalScope(constants.Name), name)
|
||||
}
|
||||
the.Peer.PeerWithOnion(address)
|
||||
}
|
||||
|
||||
this.GetUiManager(this.selectedProfile()).AddContact(address)
|
||||
}
|
||||
|
||||
// Deprecated TODO: delete when gcd.addGroup is implemented from this
|
||||
func (this *GrandCentralDispatcher) importString(str string) {
|
||||
if len(str) < 5 {
|
||||
log.Debugf("ignoring short string")
|
||||
return
|
||||
}
|
||||
|
||||
if gf,err := groups.ExperimentGate(this.GlobalSettings.Experiments); err == nil {
|
||||
if gf, err := groups.ExperimentGate(this.GlobalSettings.Experiments); err == nil {
|
||||
if gf.ValidPrefix(str) {
|
||||
err = gf.HandleImportString(str)
|
||||
if err == nil {
|
||||
|
@ -492,7 +526,7 @@ func (this *GrandCentralDispatcher) importString(str string) {
|
|||
this.InvokePopup("successfully imported")
|
||||
return
|
||||
}
|
||||
this.InvokePopup("failed import: " + err.Error())
|
||||
this.InvokePopup("failed import: " + err.Error())
|
||||
return
|
||||
}
|
||||
// drop through to peer import strings
|
||||
|
@ -503,8 +537,6 @@ func (this *GrandCentralDispatcher) importString(str string) {
|
|||
name := onion
|
||||
str = strings.TrimSpace(str)
|
||||
|
||||
|
||||
|
||||
if strings.Contains(str, " ") { // usually people prepend spaces and we don't want it going into the name (use ~ for that)
|
||||
parts := strings.Split(strings.TrimSpace(str), " ")
|
||||
str = parts[len(parts)-1]
|
||||
|
@ -732,9 +764,8 @@ func (this *GrandCentralDispatcher) loadProfile(onion string) {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
// Groups Gating
|
||||
if _,err := groups.ExperimentGate(this.GlobalSettings.Experiments); err == nil {
|
||||
if _, err := groups.ExperimentGate(this.GlobalSettings.Experiments); err == nil {
|
||||
the.Peer.StartServerConnections()
|
||||
groups := the.Peer.GetGroups()
|
||||
for i := range groups {
|
||||
|
@ -795,4 +826,4 @@ func (this *GrandCentralDispatcher) deleteProfile(onion string) {
|
|||
func (this *GrandCentralDispatcher) peerAckAlert(mID string) {
|
||||
idx, _ := strconv.Atoi(mID)
|
||||
this.TimelineInterface.EditMessage(idx)
|
||||
}
|
||||
}
|
||||
|
|
Binary file not shown.
|
@ -8,28 +8,117 @@
|
|||
<translation type="vanished">Gruppe Anlegen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="31"/>
|
||||
<source>server-label</source>
|
||||
<extracomment>Server label</extracomment>
|
||||
<translation>Server</translation>
|
||||
<translation type="vanished">Server</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="42"/>
|
||||
<source>group-name-label</source>
|
||||
<extracomment>Group name label</extracomment>
|
||||
<translation>Gruppenname</translation>
|
||||
<translation type="vanished">Gruppenname</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="49"/>
|
||||
<source>default-group-name</source>
|
||||
<extracomment>default suggested group name</extracomment>
|
||||
<translation>Tolle Gruppe</translation>
|
||||
<translation type="vanished">Tolle Gruppe</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="54"/>
|
||||
<source>create-group-btn</source>
|
||||
<extracomment>create group button</extracomment>
|
||||
<translation>Anlegen</translation>
|
||||
<translation type="vanished">Anlegen</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AddPeerGroupPane</name>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="45"/>
|
||||
<source>profile-oniblon-label</source>
|
||||
<extracomment>Send this address to peers you want to connect with</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="55"/>
|
||||
<source>copy-btn</source>
|
||||
<translation type="unfinished">Kopieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="59"/>
|
||||
<source>copied-to-clipboard-notification</source>
|
||||
<extracomment>notification: copied to clipboard</extracomment>
|
||||
<translation type="unfinished">in die Zwischenablage kopiert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="86"/>
|
||||
<source>add-peer-tab</source>
|
||||
<extracomment>Add a peer</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="103"/>
|
||||
<source>create-group-tab</source>
|
||||
<extracomment>Create a group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="120"/>
|
||||
<source>join-group-tab</source>
|
||||
<extracomment>Join a group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="157"/>
|
||||
<source>peer-address</source>
|
||||
<extracomment>Address</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="169"/>
|
||||
<source>peer-name</source>
|
||||
<extracomment>Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="190"/>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="246"/>
|
||||
<source>group-name</source>
|
||||
<extracomment>Group Name
|
||||
----------
|
||||
Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="202"/>
|
||||
<source>server</source>
|
||||
<extracomment>Server</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="211"/>
|
||||
<source>invitation</source>
|
||||
<extracomment>Invitation</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="233"/>
|
||||
<source>group-addr</source>
|
||||
<extracomment>Address</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>add-peer</source>
|
||||
<extracomment>Add Peer | Create Group | Join Group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>create-group</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>join-group</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -270,17 +359,17 @@
|
|||
<translation type="vanished">Ablehnen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="66"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="35"/>
|
||||
<source>chat-btn</source>
|
||||
<translation>Chat</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="80"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="49"/>
|
||||
<source>lists-btn</source>
|
||||
<translation>Listen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="94"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="63"/>
|
||||
<source>bulletins-btn</source>
|
||||
<translation>Meldungen</translation>
|
||||
</message>
|
||||
|
@ -347,11 +436,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>ProfileAddEditPane</name>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="35"/>
|
||||
<source>default-profile-name</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="179"/>
|
||||
<source>copy-btn</source>
|
||||
|
@ -364,13 +448,13 @@
|
|||
<translation type="unfinished">in die Zwischenablage kopiert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="276"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="275"/>
|
||||
<source>radio-use-password</source>
|
||||
<extracomment>Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="286"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="285"/>
|
||||
<source>radio-no-password</source>
|
||||
<extracomment>Unencrypted (No password)</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -399,73 +483,73 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="260"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="259"/>
|
||||
<source>your-display-name</source>
|
||||
<extracomment>Your Display Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="304"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="303"/>
|
||||
<source>current-password-label</source>
|
||||
<extracomment>Current Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="322"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="321"/>
|
||||
<source>password1-label</source>
|
||||
<extracomment>Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="340"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="339"/>
|
||||
<source>password2-label</source>
|
||||
<extracomment>Reenter password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="375"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="374"/>
|
||||
<source>create-profile-btn</source>
|
||||
<extracomment>Create || Save</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="375"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="374"/>
|
||||
<source>save-profile-btn</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="352"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="351"/>
|
||||
<source>password-error-match</source>
|
||||
<extracomment>Passwords do not match</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="363"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="362"/>
|
||||
<source>password-change-error</source>
|
||||
<extracomment>Error changing password: Supplied password rejected</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="420"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="419"/>
|
||||
<source>delete-profile-btn</source>
|
||||
<extracomment>Delete Profile</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="439"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="452"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="438"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="451"/>
|
||||
<source>delete-confirm-label</source>
|
||||
<extracomment>Type DELETE to confirm</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="463"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="462"/>
|
||||
<source>delete-profile-confirm-btn</source>
|
||||
<extracomment>Really Delete Profile</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="468"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="467"/>
|
||||
<source>delete-confirm-text</source>
|
||||
<extracomment>DELETE</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -638,4 +722,13 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
<location filename="../qml/main.qml" line="251"/>
|
||||
<source>new-connection-pane-title</source>
|
||||
<extracomment>New Connection</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
|
|
Binary file not shown.
|
@ -8,28 +8,117 @@
|
|||
<translation type="vanished">Create Group</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="31"/>
|
||||
<source>server-label</source>
|
||||
<extracomment>Server label</extracomment>
|
||||
<translation>Server</translation>
|
||||
<translation type="vanished">Server</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="42"/>
|
||||
<source>group-name-label</source>
|
||||
<extracomment>Group name label</extracomment>
|
||||
<translation type="vanished">Group name</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>default-group-name</source>
|
||||
<extracomment>default suggested group name</extracomment>
|
||||
<translation type="vanished">Awesome Group</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>create-group-btn</source>
|
||||
<extracomment>create group button</extracomment>
|
||||
<translation type="vanished">Create</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AddPeerGroupPane</name>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="45"/>
|
||||
<source>profile-oniblon-label</source>
|
||||
<extracomment>Send this address to peers you want to connect with</extracomment>
|
||||
<translation>Send this address to peers you want to connect with</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="55"/>
|
||||
<source>copy-btn</source>
|
||||
<translation>Copy</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="59"/>
|
||||
<source>copied-to-clipboard-notification</source>
|
||||
<extracomment>notification: copied to clipboard</extracomment>
|
||||
<translation>Copied to Clipboard</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="86"/>
|
||||
<source>add-peer-tab</source>
|
||||
<extracomment>Add a peer</extracomment>
|
||||
<translation>Add a peer</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="103"/>
|
||||
<source>create-group-tab</source>
|
||||
<extracomment>Create a group</extracomment>
|
||||
<translation>Create a group</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="120"/>
|
||||
<source>join-group-tab</source>
|
||||
<extracomment>Join a group</extracomment>
|
||||
<translation>Join a group</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="157"/>
|
||||
<source>peer-address</source>
|
||||
<extracomment>Address</extracomment>
|
||||
<translation>Address</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="169"/>
|
||||
<source>peer-name</source>
|
||||
<extracomment>Name</extracomment>
|
||||
<translation>Name</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="190"/>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="246"/>
|
||||
<source>group-name</source>
|
||||
<extracomment>Group Name
|
||||
----------
|
||||
Name</extracomment>
|
||||
<translation>Group name</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="49"/>
|
||||
<source>default-group-name</source>
|
||||
<extracomment>default suggested group name</extracomment>
|
||||
<translation>Awesome Group</translation>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="202"/>
|
||||
<source>server</source>
|
||||
<extracomment>Server</extracomment>
|
||||
<translation>Server</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="54"/>
|
||||
<source>create-group-btn</source>
|
||||
<extracomment>create group button</extracomment>
|
||||
<translation>Create</translation>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="211"/>
|
||||
<source>invitation</source>
|
||||
<extracomment>Invitation</extracomment>
|
||||
<translation>Invitation</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="233"/>
|
||||
<source>group-addr</source>
|
||||
<extracomment>Address</extracomment>
|
||||
<translation>Address</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>add-peer</source>
|
||||
<extracomment>Add Peer | Create Group | Join Group</extracomment>
|
||||
<translation>Add Peer</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>create-group</source>
|
||||
<translation>Create group</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>join-group</source>
|
||||
<translation>Join group</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -350,17 +439,17 @@ Right-click to reset.</translation>
|
|||
<translation type="vanished">Reject</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="66"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="35"/>
|
||||
<source>chat-btn</source>
|
||||
<translation>Chat</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="80"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="49"/>
|
||||
<source>lists-btn</source>
|
||||
<translation>Lists</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="94"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="63"/>
|
||||
<source>bulletins-btn</source>
|
||||
<translation>Bulletins</translation>
|
||||
</message>
|
||||
|
@ -445,9 +534,8 @@ Right-click to reset.</translation>
|
|||
<translation type="vanished">Display name</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="35"/>
|
||||
<source>default-profile-name</source>
|
||||
<translation>Alice</translation>
|
||||
<translation type="vanished">Alice</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="111"/>
|
||||
|
@ -477,13 +565,13 @@ Right-click to reset.</translation>
|
|||
<translation>Copied to Clipboard</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="276"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="275"/>
|
||||
<source>radio-use-password</source>
|
||||
<extracomment>Password</extracomment>
|
||||
<translation>Password</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="286"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="285"/>
|
||||
<source>radio-no-password</source>
|
||||
<extracomment>Unencrypted (No password)</extracomment>
|
||||
<translation>Unencrypted (No password)</translation>
|
||||
|
@ -501,73 +589,73 @@ Right-click to reset.</translation>
|
|||
<translation>Send this address to peers you want to connect with</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="260"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="259"/>
|
||||
<source>your-display-name</source>
|
||||
<extracomment>Your Display Name</extracomment>
|
||||
<translation>Your Display Name</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="304"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="303"/>
|
||||
<source>current-password-label</source>
|
||||
<extracomment>Current Password</extracomment>
|
||||
<translation>Current Password</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="322"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="321"/>
|
||||
<source>password1-label</source>
|
||||
<extracomment>Password</extracomment>
|
||||
<translation>Password</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="340"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="339"/>
|
||||
<source>password2-label</source>
|
||||
<extracomment>Reenter password</extracomment>
|
||||
<translation>Reenter password</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="375"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="374"/>
|
||||
<source>create-profile-btn</source>
|
||||
<extracomment>Create || Save</extracomment>
|
||||
<translation>Create Profile</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="375"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="374"/>
|
||||
<source>save-profile-btn</source>
|
||||
<translation>Save Profile</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="352"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="351"/>
|
||||
<source>password-error-match</source>
|
||||
<extracomment>Passwords do not match</extracomment>
|
||||
<translation>Passwords do not match</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="363"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="362"/>
|
||||
<source>password-change-error</source>
|
||||
<extracomment>Error changing password: Supplied password rejected</extracomment>
|
||||
<translation>Error changing password: Supplied password rejected</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="420"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="419"/>
|
||||
<source>delete-profile-btn</source>
|
||||
<extracomment>Delete Profile</extracomment>
|
||||
<translation>Delete Profile</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="439"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="452"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="438"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="451"/>
|
||||
<source>delete-confirm-label</source>
|
||||
<extracomment>Type DELETE to confirm</extracomment>
|
||||
<translation>Type DELETE to confirm</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="463"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="462"/>
|
||||
<source>delete-profile-confirm-btn</source>
|
||||
<extracomment>Really Delete Profile</extracomment>
|
||||
<translation>Really Delete Profile</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="468"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="467"/>
|
||||
<source>delete-confirm-text</source>
|
||||
<extracomment>DELETE</extracomment>
|
||||
<translation>DELETE</translation>
|
||||
|
@ -697,7 +785,7 @@ Right-click to reset.</translation>
|
|||
<location filename="../qml/panes/SettingsPane.qml" line="127"/>
|
||||
<source>experiments-enabled</source>
|
||||
<extracomment>Theme</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>Experiments enabled</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/SettingsPane.qml" line="188"/>
|
||||
|
@ -757,4 +845,13 @@ Right-click to reset.</translation>
|
|||
<translation>Online</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
<location filename="../qml/main.qml" line="251"/>
|
||||
<source>new-connection-pane-title</source>
|
||||
<extracomment>New Connection</extracomment>
|
||||
<translation>New Connection</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
|
|
Binary file not shown.
|
@ -8,28 +8,117 @@
|
|||
<translation type="vanished">Créer un groupe</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="31"/>
|
||||
<source>server-label</source>
|
||||
<extracomment>Server label</extracomment>
|
||||
<translation>Serveur</translation>
|
||||
<translation type="vanished">Serveur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="42"/>
|
||||
<source>group-name-label</source>
|
||||
<extracomment>Group name label</extracomment>
|
||||
<translation>Groupe</translation>
|
||||
<translation type="vanished">Groupe</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="49"/>
|
||||
<source>default-group-name</source>
|
||||
<extracomment>default suggested group name</extracomment>
|
||||
<translation>Un super groupe</translation>
|
||||
<translation type="vanished">Un super groupe</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="54"/>
|
||||
<source>create-group-btn</source>
|
||||
<extracomment>create group button</extracomment>
|
||||
<translation>Créer</translation>
|
||||
<translation type="vanished">Créer</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AddPeerGroupPane</name>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="45"/>
|
||||
<source>profile-oniblon-label</source>
|
||||
<extracomment>Send this address to peers you want to connect with</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="55"/>
|
||||
<source>copy-btn</source>
|
||||
<translation type="unfinished">Copier</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="59"/>
|
||||
<source>copied-to-clipboard-notification</source>
|
||||
<extracomment>notification: copied to clipboard</extracomment>
|
||||
<translation type="unfinished">Copié dans le presse-papier</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="86"/>
|
||||
<source>add-peer-tab</source>
|
||||
<extracomment>Add a peer</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="103"/>
|
||||
<source>create-group-tab</source>
|
||||
<extracomment>Create a group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="120"/>
|
||||
<source>join-group-tab</source>
|
||||
<extracomment>Join a group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="157"/>
|
||||
<source>peer-address</source>
|
||||
<extracomment>Address</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="169"/>
|
||||
<source>peer-name</source>
|
||||
<extracomment>Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="190"/>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="246"/>
|
||||
<source>group-name</source>
|
||||
<extracomment>Group Name
|
||||
----------
|
||||
Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="202"/>
|
||||
<source>server</source>
|
||||
<extracomment>Server</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="211"/>
|
||||
<source>invitation</source>
|
||||
<extracomment>Invitation</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="233"/>
|
||||
<source>group-addr</source>
|
||||
<extracomment>Address</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>add-peer</source>
|
||||
<extracomment>Add Peer | Create Group | Join Group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>create-group</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>join-group</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -270,17 +359,17 @@
|
|||
<translation type="vanished">Refuser</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="66"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="35"/>
|
||||
<source>chat-btn</source>
|
||||
<translation>Discuter</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="80"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="49"/>
|
||||
<source>lists-btn</source>
|
||||
<translation>Listes</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="94"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="63"/>
|
||||
<source>bulletins-btn</source>
|
||||
<translation>Bulletins</translation>
|
||||
</message>
|
||||
|
@ -347,11 +436,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>ProfileAddEditPane</name>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="35"/>
|
||||
<source>default-profile-name</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="179"/>
|
||||
<source>copy-btn</source>
|
||||
|
@ -364,13 +448,13 @@
|
|||
<translation type="unfinished">Copié dans le presse-papier</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="276"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="275"/>
|
||||
<source>radio-use-password</source>
|
||||
<extracomment>Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="286"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="285"/>
|
||||
<source>radio-no-password</source>
|
||||
<extracomment>Unencrypted (No password)</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -399,73 +483,73 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="260"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="259"/>
|
||||
<source>your-display-name</source>
|
||||
<extracomment>Your Display Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="304"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="303"/>
|
||||
<source>current-password-label</source>
|
||||
<extracomment>Current Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="322"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="321"/>
|
||||
<source>password1-label</source>
|
||||
<extracomment>Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="340"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="339"/>
|
||||
<source>password2-label</source>
|
||||
<extracomment>Reenter password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="375"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="374"/>
|
||||
<source>create-profile-btn</source>
|
||||
<extracomment>Create || Save</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="375"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="374"/>
|
||||
<source>save-profile-btn</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="352"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="351"/>
|
||||
<source>password-error-match</source>
|
||||
<extracomment>Passwords do not match</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="363"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="362"/>
|
||||
<source>password-change-error</source>
|
||||
<extracomment>Error changing password: Supplied password rejected</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="420"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="419"/>
|
||||
<source>delete-profile-btn</source>
|
||||
<extracomment>Delete Profile</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="439"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="452"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="438"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="451"/>
|
||||
<source>delete-confirm-label</source>
|
||||
<extracomment>Type DELETE to confirm</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="463"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="462"/>
|
||||
<source>delete-profile-confirm-btn</source>
|
||||
<extracomment>Really Delete Profile</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="468"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="467"/>
|
||||
<source>delete-confirm-text</source>
|
||||
<extracomment>DELETE</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -638,4 +722,13 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
<location filename="../qml/main.qml" line="251"/>
|
||||
<source>new-connection-pane-title</source>
|
||||
<extracomment>New Connection</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
|
|
Binary file not shown.
|
@ -8,28 +8,117 @@
|
|||
<translation type="vanished">Criar Grupo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="31"/>
|
||||
<source>server-label</source>
|
||||
<extracomment>Server label</extracomment>
|
||||
<translation>Servidor</translation>
|
||||
<translation type="vanished">Servidor</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="42"/>
|
||||
<source>group-name-label</source>
|
||||
<extracomment>Group name label</extracomment>
|
||||
<translation>Nome do grupo</translation>
|
||||
<translation type="vanished">Nome do grupo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="49"/>
|
||||
<source>default-group-name</source>
|
||||
<extracomment>default suggested group name</extracomment>
|
||||
<translation>Grupo incrível</translation>
|
||||
<translation type="vanished">Grupo incrível</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddGroupPane.qml" line="54"/>
|
||||
<source>create-group-btn</source>
|
||||
<extracomment>create group button</extracomment>
|
||||
<translation>Criar</translation>
|
||||
<translation type="vanished">Criar</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AddPeerGroupPane</name>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="45"/>
|
||||
<source>profile-oniblon-label</source>
|
||||
<extracomment>Send this address to peers you want to connect with</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="55"/>
|
||||
<source>copy-btn</source>
|
||||
<translation type="unfinished">Copiar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="59"/>
|
||||
<source>copied-to-clipboard-notification</source>
|
||||
<extracomment>notification: copied to clipboard</extracomment>
|
||||
<translation type="unfinished">Copiado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="86"/>
|
||||
<source>add-peer-tab</source>
|
||||
<extracomment>Add a peer</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="103"/>
|
||||
<source>create-group-tab</source>
|
||||
<extracomment>Create a group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="120"/>
|
||||
<source>join-group-tab</source>
|
||||
<extracomment>Join a group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="157"/>
|
||||
<source>peer-address</source>
|
||||
<extracomment>Address</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="169"/>
|
||||
<source>peer-name</source>
|
||||
<extracomment>Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="190"/>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="246"/>
|
||||
<source>group-name</source>
|
||||
<extracomment>Group Name
|
||||
----------
|
||||
Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="202"/>
|
||||
<source>server</source>
|
||||
<extracomment>Server</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="211"/>
|
||||
<source>invitation</source>
|
||||
<extracomment>Invitation</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="233"/>
|
||||
<source>group-addr</source>
|
||||
<extracomment>Address</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>add-peer</source>
|
||||
<extracomment>Add Peer | Create Group | Join Group</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>create-group</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/AddPeerGroupPane.qml" line="265"/>
|
||||
<source>join-group</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -270,17 +359,17 @@
|
|||
<translation type="vanished">Recusar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="66"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="35"/>
|
||||
<source>chat-btn</source>
|
||||
<translation>Chat</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="80"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="49"/>
|
||||
<source>lists-btn</source>
|
||||
<translation>Listas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="94"/>
|
||||
<location filename="../qml/panes/OverlayPane.qml" line="63"/>
|
||||
<source>bulletins-btn</source>
|
||||
<translation>Boletins</translation>
|
||||
</message>
|
||||
|
@ -347,11 +436,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>ProfileAddEditPane</name>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="35"/>
|
||||
<source>default-profile-name</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="179"/>
|
||||
<source>copy-btn</source>
|
||||
|
@ -364,13 +448,13 @@
|
|||
<translation type="unfinished">Copiado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="276"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="275"/>
|
||||
<source>radio-use-password</source>
|
||||
<extracomment>Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="286"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="285"/>
|
||||
<source>radio-no-password</source>
|
||||
<extracomment>Unencrypted (No password)</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -399,73 +483,73 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="260"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="259"/>
|
||||
<source>your-display-name</source>
|
||||
<extracomment>Your Display Name</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="304"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="303"/>
|
||||
<source>current-password-label</source>
|
||||
<extracomment>Current Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="322"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="321"/>
|
||||
<source>password1-label</source>
|
||||
<extracomment>Password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="340"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="339"/>
|
||||
<source>password2-label</source>
|
||||
<extracomment>Reenter password</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="375"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="374"/>
|
||||
<source>create-profile-btn</source>
|
||||
<extracomment>Create || Save</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="375"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="374"/>
|
||||
<source>save-profile-btn</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="352"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="351"/>
|
||||
<source>password-error-match</source>
|
||||
<extracomment>Passwords do not match</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="363"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="362"/>
|
||||
<source>password-change-error</source>
|
||||
<extracomment>Error changing password: Supplied password rejected</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="420"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="419"/>
|
||||
<source>delete-profile-btn</source>
|
||||
<extracomment>Delete Profile</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="439"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="452"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="438"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="451"/>
|
||||
<source>delete-confirm-label</source>
|
||||
<extracomment>Type DELETE to confirm</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="463"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="462"/>
|
||||
<source>delete-profile-confirm-btn</source>
|
||||
<extracomment>Really Delete Profile</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="468"/>
|
||||
<location filename="../qml/panes/ProfileAddEditPane.qml" line="467"/>
|
||||
<source>delete-confirm-text</source>
|
||||
<extracomment>DELETE</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -638,4 +722,13 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
<location filename="../qml/main.qml" line="251"/>
|
||||
<source>new-connection-pane-title</source>
|
||||
<extracomment>New Connection</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
|
|
2
qml.qrc
2
qml.qrc
|
@ -5,7 +5,7 @@
|
|||
<file>qml/overlays/ListOverlay.qml</file>
|
||||
<file>qml/overlays/MembershipOverlay.qml</file>
|
||||
<file>qml/main.qml</file>
|
||||
<file>qml/panes/AddGroupPane.qml</file>
|
||||
<file>qml/panes/AddPeerGroupPane.qml</file>
|
||||
<file>qml/panes/GroupSettingsPane.qml</file>
|
||||
<file>qml/panes/OverlayPane.qml</file>
|
||||
<file>qml/panes/PeerSettingsPane.qml</file>
|
||||
|
|
14
qml/main.qml
14
qml/main.qml
|
@ -214,7 +214,7 @@ ApplicationWindow {
|
|||
readonly property int messagePane: 1
|
||||
readonly property int userProfilePane: 2
|
||||
readonly property int groupProfilePane: 3
|
||||
readonly property int addGroupPane: 4
|
||||
readonly property int addPeerGroupPane: 4
|
||||
readonly property int serverInfoPane: 5
|
||||
|
||||
Item { anchors.fill: parent } // empty
|
||||
|
@ -234,7 +234,10 @@ ApplicationWindow {
|
|||
|
||||
GroupSettingsPane{ anchors.fill: parent }
|
||||
|
||||
AddGroupPane { anchors.fill: parent }
|
||||
AddPeerGroupPane {
|
||||
id: addPeerGroupPaneInstance
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
ServerInfoPane { anchors.fill: parent }
|
||||
|
||||
|
@ -243,6 +246,11 @@ ApplicationWindow {
|
|||
if (currentIndex == emptyPane) {
|
||||
toolbar.hideTitle()
|
||||
toolbar.rightMenuVisible = false
|
||||
} else if (currentIndex == addPeerGroupPane) {
|
||||
//: New Connection
|
||||
toolbar.setTitle(qsTr('new-connection-pane-title'))
|
||||
toolbar.rightMenuVisible = false
|
||||
addPeerGroupPaneInstance.reset()
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -275,8 +283,6 @@ ApplicationWindow {
|
|||
|
||||
|
||||
function updateToolbar() {
|
||||
|
||||
|
||||
if (currentIndex == splashPane) {
|
||||
toolbar.hideTitle()
|
||||
toolbar.rightMenuVisible = false
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 15e3f5ab84473070d16238f36fa04584d46f0bcb
|
||||
Subproject commit 80eaf1a0d22efb3b6835599368bc288a9e0aa592
|
|
@ -1,63 +0,0 @@
|
|||
import QtGraphicalEffects 1.0
|
||||
import QtQuick 2.7
|
||||
import QtQuick.Controls 2.4
|
||||
import QtQuick.Controls.Material 2.0
|
||||
import QtQuick.Layouts 1.3
|
||||
import QtQuick.Window 2.11
|
||||
import QtQuick.Controls 1.4
|
||||
|
||||
import "../opaque" as Opaque
|
||||
import "../opaque/styles"
|
||||
|
||||
ColumnLayout { // settingsPane
|
||||
id: root
|
||||
anchors.fill: parent
|
||||
|
||||
Flickable {
|
||||
anchors.fill: parent
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
clip:true
|
||||
contentWidth: tehcol.width
|
||||
contentHeight: tehcol.height
|
||||
|
||||
Column {
|
||||
id: tehcol
|
||||
leftPadding: 10
|
||||
spacing: 5
|
||||
width: root.width
|
||||
|
||||
Opaque.ScalingLabel {
|
||||
//: Server label
|
||||
text: qsTr("server-label") + ":"
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: txtServer
|
||||
style: CwtchTextFieldStyle{ width: tehcol.width * 0.8 }
|
||||
text: "2c3kmoobnyghj2zw6pwv7d57yzld753auo3ugauezzpvfak3ahc4bdyd"
|
||||
}
|
||||
|
||||
Opaque.ScalingLabel{
|
||||
//: Group name label
|
||||
text: qsTr("group-name-label") + ":"
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: txtGroupName
|
||||
style: CwtchTextFieldStyle{ width: tehcol.width * 0.8 }
|
||||
//: default suggested group name
|
||||
text: qsTr("default-group-name")
|
||||
}
|
||||
|
||||
Opaque.Button {
|
||||
//: create group button
|
||||
text: qsTr("create-group-btn")
|
||||
|
||||
onClicked: {
|
||||
gcd.createGroup(txtServer.text, txtGroupName.text)
|
||||
}
|
||||
}
|
||||
|
||||
}//end of column with padding
|
||||
}//end of flickable
|
||||
}
|
|
@ -0,0 +1,283 @@
|
|||
import QtGraphicalEffects 1.0
|
||||
import QtQuick 2.7
|
||||
import QtQuick.Controls 2.4
|
||||
import QtQuick.Controls.Material 2.0
|
||||
import QtQuick.Layouts 1.3
|
||||
import QtQuick.Window 2.11
|
||||
import QtQuick.Controls 1.4
|
||||
|
||||
import "../opaque" as Opaque
|
||||
import "../opaque/styles"
|
||||
import "../utils.js" as Utils
|
||||
import "../opaque/theme"
|
||||
import "../const"
|
||||
|
||||
|
||||
Rectangle {
|
||||
id: root
|
||||
color: Theme.backgroundPaneColor
|
||||
|
||||
function reset() {
|
||||
addStack.currentIndex = addStack.addPeer
|
||||
|
||||
peerAddr.text = ""
|
||||
peerName.text = ""
|
||||
|
||||
groupNameCreate.text = ""
|
||||
|
||||
groupAddr.text = ""
|
||||
groupNameJoin.text = ""
|
||||
|
||||
onionLabel.text = gcd.selectedProfile
|
||||
}
|
||||
|
||||
Column {
|
||||
anchors.fill: parent
|
||||
spacing: 25 * gcd.themeScale
|
||||
leftPadding: 20 * gcd.themeScale
|
||||
rightPadding: 20 * gcd.themeScale
|
||||
|
||||
Opaque.ScalingLabel {
|
||||
id: shareLabel
|
||||
anchors {
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
}
|
||||
horizontalAlignment:Text.AlignHCenter
|
||||
size: Theme.secondaryTextSize
|
||||
wrapMode: Text.Wrap
|
||||
|
||||
//: Send this address to peers you want to connect with
|
||||
text: qsTr("profile-oniblon-label")
|
||||
}
|
||||
|
||||
Opaque.ButtonTextField {
|
||||
id: onionLabel
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
readOnly: true
|
||||
|
||||
width: parent.width - (40*gcd.themeScale)
|
||||
|
||||
button_text: qsTr("copy-btn")
|
||||
dropShadowColor: Theme.dropShadowPaneColor
|
||||
onClicked: {
|
||||
//: notification: copied to clipboard
|
||||
gcd.popup(qsTr("copied-to-clipboard-notification"))
|
||||
onionLabel.selectAll()
|
||||
onionLabel.copy()
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle { // Spacer
|
||||
width: 1
|
||||
height: 25 * gcd.themeScale
|
||||
color: root.color
|
||||
}
|
||||
|
||||
RowLayout {
|
||||
id: switcher
|
||||
visible: gcd.experimentsEnabled && Utils.checkMap(gcd.experiments, "tapir-groups-experiment")
|
||||
|
||||
height: addPeerTab.height
|
||||
implicitHeight: height
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
|
||||
Opaque.Tab {
|
||||
id: addPeerTab
|
||||
Layout.fillWidth: true
|
||||
active: addStack.currentIndex == addStack.addPeer
|
||||
//: Add a peer
|
||||
text: qsTr("add-peer-tab")
|
||||
|
||||
size: Theme.chatMetaTextSize
|
||||
|
||||
onClicked: { addStack.currentIndex = addStack.addPeer; }
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 2
|
||||
height: parent.height
|
||||
color: Theme.dividerColor
|
||||
}
|
||||
|
||||
Opaque.Tab {
|
||||
Layout.fillWidth: true
|
||||
active: addStack.currentIndex == addStack.createGroup
|
||||
//: Create a group
|
||||
text: qsTr("create-group-tab")
|
||||
|
||||
size: Theme.chatMetaTextSize
|
||||
|
||||
onClicked: { addStack.currentIndex = addStack.createGroup }
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 2
|
||||
height: parent.height
|
||||
color: Theme.dividerColor
|
||||
}
|
||||
|
||||
Opaque.Tab {
|
||||
Layout.fillWidth: true
|
||||
active: addStack.currentIndex == addStack.joinGroup
|
||||
//: Join a group
|
||||
text: qsTr("join-group-tab")
|
||||
|
||||
size: Theme.chatMetaTextSize
|
||||
|
||||
onClicked: { addStack.currentIndex = addStack.joinGroup}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
StackLayout {
|
||||
id: addStack
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
|
||||
implicitHeight: height
|
||||
currentIndex: addPeer
|
||||
|
||||
readonly property int addPeer: 0
|
||||
readonly property int createGroup: 1
|
||||
readonly property int joinGroup: 2
|
||||
|
||||
Column { // Add a peer
|
||||
Layout.fillWidth: true
|
||||
leftPadding: 20 * gcd.themeScale
|
||||
rightPadding: 20 * gcd.themeScale
|
||||
spacing: 25 * gcd.themeScale
|
||||
|
||||
|
||||
Opaque.UnderlineTextField {
|
||||
id: peerAddr
|
||||
|
||||
backgroundColor: Theme.backgroundPaneColor
|
||||
width: parent.width - (40*gcd.themeScale)
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
//: Address
|
||||
placeholderText: qsTr("peer-address")
|
||||
|
||||
}
|
||||
|
||||
Opaque.UnderlineTextField {
|
||||
id: peerName
|
||||
|
||||
backgroundColor: Theme.backgroundPaneColor
|
||||
width: parent.width - (40*gcd.themeScale)
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
//: Name
|
||||
placeholderText: qsTr("peer-name")
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
Layout.fillWidth: true
|
||||
leftPadding: 20 * gcd.themeScale
|
||||
rightPadding: 20 * gcd.themeScale
|
||||
spacing: 25 * gcd.themeScale
|
||||
|
||||
|
||||
Opaque.UnderlineTextField {
|
||||
visible: gcd.experimentsEnabled && Utils.checkMap(gcd.experiments, "tapir-groups-experiment")
|
||||
id: groupNameCreate
|
||||
|
||||
backgroundColor: Theme.backgroundPaneColor
|
||||
width: parent.width - (40*gcd.themeScale)
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
//: Group Name
|
||||
placeholderText: qsTr("group-name")
|
||||
|
||||
}
|
||||
|
||||
Row {
|
||||
width: parent.width - (40*gcd.themeScale)
|
||||
|
||||
Column {
|
||||
visible: gcd.experimentsEnabled && Utils.checkMap(gcd.experiments, "tapir-groups-experiment")
|
||||
width: parent.width / 2
|
||||
Opaque.ScalingLabel {
|
||||
//: Server
|
||||
text: qsTr("server")
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
visible: gcd.experimentsEnabled && Utils.checkMap(gcd.experiments, "tapir-groups-experiment")
|
||||
width: parent.width / 2
|
||||
Opaque.ScalingLabel {
|
||||
//: Invitation
|
||||
text: qsTr("invitation")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
Layout.fillWidth: true
|
||||
leftPadding: 20 * gcd.themeScale
|
||||
rightPadding: 20 * gcd.themeScale
|
||||
spacing: 25 * gcd.themeScale
|
||||
|
||||
|
||||
Opaque.UnderlineTextField {
|
||||
visible: gcd.experimentsEnabled && Utils.checkMap(gcd.experiments, "tapir-groups-experiment")
|
||||
id: groupAddr
|
||||
|
||||
backgroundColor: Theme.backgroundPaneColor
|
||||
width: parent.width - (40*gcd.themeScale)
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
//: Address
|
||||
placeholderText: qsTr("group-addr")
|
||||
|
||||
}
|
||||
|
||||
Opaque.UnderlineTextField {
|
||||
visible: gcd.experimentsEnabled && Utils.checkMap(gcd.experiments, "tapir-groups-experiment")
|
||||
id: groupNameJoin
|
||||
|
||||
backgroundColor: Theme.backgroundPaneColor
|
||||
width: parent.width - (40*gcd.themeScale)
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
//: Name
|
||||
placeholderText: qsTr("group-name")
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Rectangle { // Spacer
|
||||
width: 1
|
||||
height: 25 * gcd.themeScale
|
||||
color: root.color
|
||||
}
|
||||
|
||||
|
||||
Opaque.Button {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
height: 40 * gcd.themeScale
|
||||
|
||||
//: Add Peer | Create Group | Join Group
|
||||
text: addStack.currentIndex == addStack.addPeer ? qsTr("add-peer") : addStack.currentIndex == addStack.createGroup ? qsTr("create-group") : qsTr("join-group")
|
||||
|
||||
onClicked: {
|
||||
if (addStack.currentIndex == addStack.addPeer) {
|
||||
gcd.addPeer(peerName.text, peerAddr.text)
|
||||
theStack.currentIndex = theStack.emptyPane
|
||||
} // Else Group stuff
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -19,37 +19,6 @@ ColumnLayout {
|
|||
property bool accepted
|
||||
property bool inGroup
|
||||
|
||||
// TODO: this isn't needed now right? the peer approval flow can be addapted for groups too?
|
||||
/* RowLayout {
|
||||
visible:!overlay.accepted && (gcd.selectedConversation.length == 32)
|
||||
|
||||
|
||||
Text {
|
||||
//: Do you want to accept the invitation to $GROUP
|
||||
text: qsTr("accept-group-invite-label") + " " + overlay.name + "?"
|
||||
}
|
||||
|
||||
Opaque.Button {
|
||||
//: Accept group invite button
|
||||
text: qsTr("accept-group-btn")
|
||||
icon: "regular/heart"
|
||||
onClicked: {
|
||||
gcd.acceptGroup(gcd.selectedConversation)
|
||||
gcd.requestGroupSettings(gcd.selectedConversation)
|
||||
}
|
||||
}
|
||||
|
||||
Opaque.Button {
|
||||
//: Reject Group invite button
|
||||
text: qsTr("reject-group-btn")
|
||||
icon: "regular/trash-alt"
|
||||
onClicked: {
|
||||
gcd.leaveGroup(gcd.selectedConversation)
|
||||
theStack.pane = theStack.emptyPane
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
RowLayout {
|
||||
id: switcher
|
||||
|
||||
|
|
|
@ -130,7 +130,7 @@ Item {
|
|||
width: height
|
||||
radius: width * 0.3
|
||||
onClicked: {
|
||||
|
||||
theStack.currentIndex = theStack.addPeerGroupPane
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Reference in New Issue