Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Start album viewer |
|---|---|
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
a28a0f2c633e6375dc4d20b1de38aa59 |
| User & Date: | bernd 2019-12-02 22:24:28.066 |
Context
|
2019-12-02
| ||
| 23:31 | Work on album viewer check-in: b5c83311ad user: bernd tags: trunk | |
| 22:24 | Start album viewer check-in: a28a0f2c63 user: bernd tags: trunk | |
| 20:27 | Chat thumbnail handling considderably improved check-in: 096c09b945 user: bernd tags: trunk | |
Changes
Changes to classes.fs.
| ︙ | ︙ | |||
134 135 136 137 138 139 140 |
cmd-class class
field: silent-last#
end-class msging-class
cmd-class class{ msg
$10 +field dummy
$value: name$ \ group name
| | > | 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 |
cmd-class class
field: silent-last#
end-class msging-class
cmd-class class{ msg
$10 +field dummy
$value: name$ \ group name
$value: id$ \ id of current message
$value: msg$ \ decrypted message
64value: timestamp \ timestamp of message
field: peers[]
field: keys[]
field: log[]
field: perms# \ pk -> permission map
field: mode
\ mode bits:
1 4 bits: otr# redate# lock# visible#
|
| ︙ | ︙ |
Changes to gui.fs.
| ︙ | ︙ | |||
874 875 876 877 878 879 880 |
; wmsg-class is msg:.nobody
: new-msg-par ( -- )
{{ }}p "msg-par" name!
dup .subbox box[] drop box[] cbl >bl
dup .subbox "msg-box" name!
to msg-box to msg-par ;
:noname { d: pk -- o }
| | | 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 |
; wmsg-class is msg:.nobody
: new-msg-par ( -- )
{{ }}p "msg-par" name!
dup .subbox box[] drop box[] cbl >bl
dup .subbox "msg-box" name!
to msg-box to msg-par ;
:noname { d: pk -- o }
pk key| to msg:id$ pk startdate@ to msg:timestamp
pk [: .simple-id ." : " ;] $tmp notify-nick!
pk key| pkc over str= { me? }
pk enddate@ otr? { otr }
pk key| last-bubble-pk $@ str= otr last-otr? = and
pk startdate@ last-tick 64over to last-tick
64- delta-bubble 64< and
IF
|
| ︙ | ︙ | |||
1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 |
>r r@ i.w 2* r@ i.h 2* hash >swap
glue*thumb r> }}thumb >r hash r@ .>rotate
ELSE
128 128 glue*thumb dummy-thumb }}thumb >r
r@ [n:h update-thumb ;] { w^ xt } xt cell hash key| fetch-finish# #!
hash key| ?fetch
THEN {{ glue*ll }}glue r> }}v 40%bv box[] ;
:noname ( addr u type -- )
obj-red
case 0 >r
msg:image# of
msg-box .childs[] $[]# ?dup-IF
rdrop 1- msg-box .childs[] $[] @
dup .name$ "thumbnail" str= IF
[: ." display image: " addr data $@ 85type cr ;]
| > > > > > > > > > > > > > > > > > > | | 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 |
>r r@ i.w 2* r@ i.h 2* hash >swap
glue*thumb r> }}thumb >r hash r@ .>rotate
ELSE
128 128 glue*thumb dummy-thumb }}thumb >r
r@ [n:h update-thumb ;] { w^ xt } xt cell hash key| fetch-finish# #!
hash key| ?fetch
THEN {{ glue*ll }}glue r> }}v 40%bv box[] ;
hash: imgs# \ hash of tables of
: .imgs ( -- )
imgs# [: dup $. ." :" cr
cell+ $@ bounds ?DO
I $@ over be-64@ .ticks space
1 64s /string 85type cr
cell +LOOP ;] #map ;
: +imgs ( addr$ -- )
[: { w^ string | ts[ 1 64s ] } msg:timestamp ts[ be-64!
ts[ 1 64s type string $. ;] $tmp $make { w^ string }
msg-group$ $@ imgs# #@ d0= IF
string cell msg-group$ $@ imgs# #!
ELSE
string $@ last# cell+ $ins[] string $free
THEN ;
:noname ( addr u type -- )
obj-red
case 0 >r
msg:image# of
msg-box .childs[] $[]# ?dup-IF
rdrop 1- msg-box .childs[] $[] @
dup .name$ "thumbnail" str= IF
[: ." display image: " addr data $@ 85type cr ;]
2swap $make dup +imgs
click[] drop EXIT THEN drop THEN
[: ." img[" 85type ']' emit ;] $tmp }}text "image" name!
endof
msg:thumbnail# of ?thumb "thumbnail" name! endof
msg:patch# of [: ." patch[" 85type ']' emit
;] $tmp }}text "patch" name! endof
msg:snapshot# of [: ." snapshot[" 85type ']' emit
;] $tmp }}text "snapshot" name! endof
|
| ︙ | ︙ |
Changes to msg.fs.
| ︙ | ︙ | |||
794 795 796 797 798 799 800 |
+zero16 nest$
0 msg-group-o .msg:keys[] $[]@ encrypt$
['] .encsign ']nestsig ;
\ nest-sig for msg/msging classes
' message msging-class is start-req
| | | 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 |
+zero16 nest$
0 msg-group-o .msg:keys[] $[]@ encrypt$
['] .encsign ']nestsig ;
\ nest-sig for msg/msging classes
' message msging-class is start-req
:noname check-date \ quicksig( check-date )else( pk-sig? )
>r 2dup r> ; msging-class is nest-sig
' message msg-class is start-req
:noname 2dup msg-dec?-sig? ; msg-class is nest-sig
' context-table is gen-table
also }scope
|
| ︙ | ︙ |