diff --git a/discord/client.py b/discord/client.py index c725da915..d786cca47 100644 --- a/discord/client.py +++ b/discord/client.py @@ -1522,8 +1522,10 @@ class Client: Editing the channel failed. """ - if 'name' not in options: - options['name'] = channel.name + keys = ('name', 'topic', 'position') + for key in keys: + if key not in options: + options[key] = getattr(channel, key) yield from self.http.edit_channel(channel.id, **options) diff --git a/discord/http.py b/discord/http.py index da301f8b4..0ff3dbfc3 100644 --- a/discord/http.py +++ b/discord/http.py @@ -339,7 +339,7 @@ class HTTPClient: def edit_channel(self, channel_id, **options): url = '{0.CHANNELS}/{1}'.format(self, channel_id) - valid_keys = ('name', 'topic', 'bitrate', 'user_limit') + valid_keys = ('name', 'topic', 'bitrate', 'user_limit', 'position') payload = { k: v for k, v in options.items() if k in valid_keys }