lib/draper/view_context.rb in draper-3.0.0.pre1 vs lib/draper/view_context.rb in draper-3.0.0
- old
+ new
@@ -18,12 +18,14 @@
# Returns the current controller.
def self.controller
RequestStore.store[:current_controller]
end
- # Sets the current controller.
+ # Sets the current controller. Clears view context when we are setting
+ # different controller.
def self.controller=(controller)
+ clear! if RequestStore.store[:current_controller] != controller
RequestStore.store[:current_controller] = controller
end
# Returns the current view context, or builds one if none is saved.
#
@@ -79,26 +81,8 @@
end
# @private
def self.build_strategy
@build_strategy ||= Draper::ViewContext::BuildStrategy.new(:full)
- end
-
- # @deprecated Use {controller} instead.
- def self.current_controller
- ActiveSupport::Deprecation.warn("Draper::ViewContext.current_controller is deprecated (use controller instead)", caller)
- self.controller || ApplicationController.new
- end
-
- # @deprecated Use {controller=} instead.
- def self.current_controller=(controller)
- ActiveSupport::Deprecation.warn("Draper::ViewContext.current_controller= is deprecated (use controller instead)", caller)
- self.controller = controller
- end
-
- # @deprecated Use {build} instead.
- def self.build_view_context
- ActiveSupport::Deprecation.warn("Draper::ViewContext.build_view_context is deprecated (use build instead)", caller)
- build
end
end
end