a lot of stuff
This commit is contained in:
1
awesome/src/lib/dbus_proxy
Submodule
1
awesome/src/lib/dbus_proxy
Submodule
Submodule awesome/src/lib/dbus_proxy added at c9253bde3f
Submodule awesome/src/lib/lua-dbus_proxy deleted from 011306f859
@@ -18,8 +18,6 @@ local gshape = require('gears.shape')
|
||||
local gobject = require('gears.object')
|
||||
local mousegrabber = mousegrabber
|
||||
|
||||
local rubato = require("src.lib.rubato")
|
||||
|
||||
local overflow = { mt = {} }
|
||||
|
||||
-- Determine the required space to draw the layout's children and, if necessary,
|
||||
@@ -275,7 +273,7 @@ end
|
||||
|
||||
--- Scroll the layout's content by `amount * step`.
|
||||
--
|
||||
-- A positive amount scroll down/right, a negative amount scrolls up/left.
|
||||
-- A positive amount scrolls down/right, a negative amount scrolls up/left.
|
||||
--
|
||||
-- The amount of units scrolled is affected by `step`.
|
||||
--
|
||||
@@ -307,9 +305,6 @@ end
|
||||
-- @tparam number scroll_factor The scroll factor.
|
||||
-- @propemits true false
|
||||
|
||||
overflow.rubato_timed = rubato.timed { duration = 0.2 }
|
||||
|
||||
local first_call = true
|
||||
function overflow:set_scroll_factor(factor)
|
||||
local current = self._private.scroll_factor
|
||||
local interval = self._private.used_in_dir - self._private.avail_in_dir
|
||||
@@ -323,22 +318,10 @@ function overflow:set_scroll_factor(factor)
|
||||
return
|
||||
end
|
||||
|
||||
self._private.scroll_factor = math.min(1, math.max(factor, 0))
|
||||
|
||||
local function update_scroll()
|
||||
self._private.scroll_factor = self.rubato_timed.pos
|
||||
self:emit_signal("widget::layout_changed")
|
||||
self:emit_signal("property::scroll_factor", factor)
|
||||
end
|
||||
|
||||
-- Make sure it only subscribes once
|
||||
if first_call then
|
||||
self.rubato_timed:subscribe(update_scroll)
|
||||
--first_call = false
|
||||
end
|
||||
|
||||
-- Set the target to the new target + remaining target from last scroll. This makes it scroll faster and correctly.
|
||||
self.rubato_timed.target = math.min(1,
|
||||
math.max(factor + (self.rubato_timed.target - self.rubato_timed.pos), 0))
|
||||
self:emit_signal("widget::layout_changed")
|
||||
self:emit_signal("property::scroll_factor", factor)
|
||||
end
|
||||
|
||||
function overflow:get_scroll_factor()
|
||||
@@ -486,6 +469,19 @@ function overflow:get_scrollbar_widget()
|
||||
return self._private.scrollbar_widget
|
||||
end
|
||||
|
||||
function overflow:reset()
|
||||
self._private.widgets = {}
|
||||
self._private.scroll_factor = 0
|
||||
|
||||
local scrollbar_widget = separator({ shape = gshape.rectangle })
|
||||
apply_scrollbar_mouse_signal(self, scrollbar_widget)
|
||||
self._private.scrollbar_widget = scrollbar_widget
|
||||
|
||||
self:emit_signal("widget::layout_changed")
|
||||
self:emit_signal("widget::reset")
|
||||
self:emit_signal("widget::reseted")
|
||||
end
|
||||
|
||||
local function new(dir, ...)
|
||||
local ret = fixed[dir](...)
|
||||
|
||||
@@ -538,7 +534,7 @@ end
|
||||
-- widgets exceeds the height available whithin the layout's outer container
|
||||
-- a scrollbar will be added and scrolling behavior enabled.
|
||||
-- @tparam widget ... Widgets that should be added to the layout.
|
||||
-- @constructorfct wibox.layout.overflow.horizontal
|
||||
-- @constructorfct wibox.layout.overflow.vertical
|
||||
function overflow.vertical(...)
|
||||
return new("vertical", ...)
|
||||
end
|
||||
|
||||
Submodule awesome/src/lib/rubato updated: b40ecae70b...47efd9d911
Reference in New Issue
Block a user