#9282: indication unchanged when filter updated (and minor changes to css)

diff --git a/trac/htdocs/css/timeline.css b/trac/htdocs/css/timeline.css
--- a/trac/htdocs/css/timeline.css
+++ b/trac/htdocs/css/timeline.css
@@ -15,8 +15,8 @@
  margin-left: 1em;
 }
 dl.unread { 
- margin-left: 0.55em;
- border-left: 0.2em solid #c0f0c0;
+ margin-left: 0.3em;
+ border-left: 0.35em solid #c0f0c0;
  padding-left: 0.35em;
 }
 
@@ -43,7 +43,7 @@
 dt.highlight { background-color: #ffa; } 
 dd { 
  font-size: 80%;
- margin: 0 0 .75em 5.5em;
+ margin: 0 0 .75em 6em;
  padding: 0;
  color: #776;
 }
diff --git a/trac/timeline/templates/timeline.html b/trac/timeline/templates/timeline.html
--- a/trac/timeline/templates/timeline.html
+++ b/trac/timeline/templates/timeline.html
@@ -26,6 +26,7 @@
           <input type="checkbox" name="${filter.name}"
                  checked="${filter.enabled or None}"/> ${filter.label}
         </label>
+        <input type="hidden" name="lastread" value="$lastread" />
        </fieldset>
        <div class="buttons">
          <input type="submit" name="update" value="${_('Update')}" />
diff --git a/trac/timeline/web_ui.py b/trac/timeline/web_ui.py
--- a/trac/timeline/web_ui.py
+++ b/trac/timeline/web_ui.py
@@ -147,14 +147,21 @@
             filters = [f[0] for f in available_filters if test(f)]
 
         # save the results of submitting the timeline form to the session
+        filter_updated = False
         if 'update' in req.args:
             for filter in available_filters:
                 key = 'timeline.filter.%s' % filter[0]
                 if filter[0] in req.args:
+                    filter_updated = filter_updated or key not in req.session
                     req.session[key] = '1'
                 elif key in req.session:
+                    filter_updated = True
                     del req.session[key]
 
+        # new events indication unchanged when any filter was changed
+        if filter_updated:
+            data['lastread'] = int(req.args.get('lastread'))
+
         stop = fromdate
         start = stop - timedelta(days=daysback + 1)
 

