POD for Order role
[catagits/Reaction.git] / lib / Reaction / UI / Window.pm
index 2865e0e..610a935 100644 (file)
@@ -27,6 +27,11 @@ sub _build_view {
 };
 sub flush {
   my ($self) = @_;
+  my $res = $self->ctx->res;
+  if ( $res->status =~ /^3/ || length($res->body) ) {
+      $res->content_type('text/plain') unless $res->content_type;
+      return;
+  }
   $self->flush_events;
   $self->flush_view;
 };
@@ -45,7 +50,7 @@ sub flush_events {
 
   foreach my $type (qw/query body/) {
     my $meth = "${type}_parameters";
-    my $param_hash = $ctx->req->$meth;
+    my $param_hash = { %{$ctx->req->$meth} }; # yeah, FocusStack deletes it
     $self->focus_stack->apply_events($param_hash)
       if keys %$param_hash;
   }
@@ -53,10 +58,6 @@ sub flush_events {
 sub flush_view {
   my ($self) = @_;
   my $res = $self->ctx->res;
-  if ( $res->status =~ /^3/ || length($res->body) ) {
-      $res->content_type('text/plain') unless $res->content_type;
-      return;
-  }
   $res->body($self->view->render_window($self));
   $res->content_type($self->content_type);
 };