Add support for explicit ordering and limiting rooms shown under a tag
Fixes #41
This commit is contained in:
@ -262,7 +262,11 @@ func (c *Container) HandleTag(source EventSource, evt *gomatrix.Event) {
|
||||
index := 0
|
||||
for tag, infoifc := range tags {
|
||||
info, _ := infoifc.(map[string]interface{})
|
||||
order, _ := info["order"].(float64)
|
||||
order := "0.5"
|
||||
rawOrder, ok := info["order"]
|
||||
if ok {
|
||||
order = fmt.Sprintf("%v", rawOrder)
|
||||
}
|
||||
newTags[index] = rooms.RoomTag{
|
||||
Tag: tag,
|
||||
Order: order,
|
||||
|
@ -39,8 +39,8 @@ const (
|
||||
type RoomTag struct {
|
||||
// The name of the tag.
|
||||
Tag string
|
||||
// The order of the tag. Smaller values are ordered higher.
|
||||
Order float64
|
||||
// The order of the tag.
|
||||
Order string
|
||||
}
|
||||
|
||||
// Room represents a single Matrix room.
|
||||
@ -118,7 +118,7 @@ func (room *Room) MarkRead() {
|
||||
|
||||
func (room *Room) Tags() []RoomTag {
|
||||
if len(room.RawTags) == 0 {
|
||||
return []RoomTag{{"", 0.5}}
|
||||
return []RoomTag{{"", "0.5"}}
|
||||
}
|
||||
return room.RawTags
|
||||
}
|
||||
|
Reference in New Issue
Block a user