get contentheigh updates working

This commit is contained in:
sawka 2023-03-31 00:32:38 -07:00
parent 4c7d3f2079
commit a7faf2040f
4 changed files with 17 additions and 6 deletions

View File

@ -1667,12 +1667,15 @@ func ScreenWebShareCommand(ctx context.Context, pk *scpacket.FeCommandPacketType
if err != nil {
return nil, fmt.Errorf("cannot create viewkey: %v", err)
}
viewKey := base64.RawURLEncoding.EncodeToString(viewKeyBytes)
webShareOpts := sstore.ScreenWebShareOpts{ShareName: shareName, ViewKey: viewKey}
screen, err := sstore.GetScreenById(ctx, ids.ScreenId)
if err != nil {
return nil, fmt.Errorf("cannot get screen: %v", err)
}
if shareName == "" {
shareName = screen.Name
}
viewKey := base64.RawURLEncoding.EncodeToString(viewKeyBytes)
webShareOpts := sstore.ScreenWebShareOpts{ShareName: shareName, ViewKey: viewKey}
err = sstore.CanScreenWebShare(screen)
if err != nil {
return nil, err
@ -2226,7 +2229,7 @@ func LineSetHeightCommand(ctx context.Context, pk *scpacket.FeCommandPacketType)
if heightVal > 10000 {
return nil, fmt.Errorf("/line:setheight invalid height val (too large): %d", heightVal)
}
err = sstore.UpdateLineHeight(ctx, lineId, heightVal)
err = sstore.UpdateLineHeight(ctx, ids.ScreenId, lineId, heightVal)
if err != nil {
return nil, fmt.Errorf("/line:setheight error updating height: %v", err)
}

View File

@ -257,12 +257,16 @@ func makeWebShareUpdate(ctx context.Context, update *sstore.ScreenUpdateType) (*
case sstore.UpdateType_LineDel:
break
case sstore.UpdateType_LineRenderer:
case sstore.UpdateType_LineRenderer, sstore.UpdateType_LineContentHeight:
line, err := sstore.GetLineById(ctx, update.ScreenId, update.LineId)
if err != nil || line == nil {
return nil, fmt.Errorf("error getting line: %v", defaultError(err, "not found"))
}
if update.UpdateType == sstore.UpdateType_LineRenderer {
rtn.SVal = line.Renderer
} else if update.UpdateType == sstore.UpdateType_LineContentHeight {
rtn.IVal = line.ContentHeight
}
case sstore.UpdateType_CmdStatus:
_, cmd, err := sstore.GetLineCmdByLineId(ctx, update.ScreenId, update.LineId)

View File

@ -1887,10 +1887,13 @@ func UpdateLineStar(ctx context.Context, lineId string, starVal int) error {
return nil
}
func UpdateLineHeight(ctx context.Context, lineId string, heightVal int) error {
func UpdateLineHeight(ctx context.Context, screenId string, lineId string, heightVal int) error {
txErr := WithTx(ctx, func(tx *TxWrap) error {
query := `UPDATE line SET contentheight = ? WHERE lineid = ?`
tx.Exec(query, heightVal, lineId)
if isWebShare(tx, screenId) {
insertScreenLineUpdate(tx, screenId, lineId, UpdateType_LineContentHeight)
}
return nil
})
if txErr != nil {

View File

@ -88,6 +88,7 @@ const (
UpdateType_LineNew = "line:new"
UpdateType_LineDel = "line:del"
UpdateType_LineRenderer = "line:renderer"
UpdateType_LineContentHeight = "line:contentheight"
UpdateType_CmdStatus = "cmd:status"
UpdateType_CmdTermOpts = "cmd:termopts"
UpdateType_CmdDoneInfo = "cmd:doneinfo"