element-hq / element-hq/element-ios

Change power levels of room

Open
#2,170 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Swift
Stars
1.8k
Forks
544
PR merge metrics
PR metrics pending

Description

how to change powerlevels.events_default in iOS?

in android we do this:

PowerLevels powerLevels = mRoom.getState().getPowerLevels().deepCopy();
powerLevels.events_default = 50;

mRoom.getDataHandler().getDataRetriever().getRoomsRestClient().updatePowerLevels(mRoom.getRoomId(), powerLevels, new ApiCallback() {
@Override
public void onSuccess(final Void info) {
if (null != getActivity()) {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
//code
}
});
}
}

private void onError(final String errorMessage) {
if (null != getActivity()) {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
hideLoadingView(true);
Toast.makeText(getActivity(), errorMessage, Toast.LENGTH_SHORT).show();
}
});
}
}

@Override
public void onNetworkError(Exception e) {
onError(e.getLocalizedMessage());
}

@Override
public void onMatrixError(MatrixError e) {
onError(e.getLocalizedMessage());
}

@Override
public void onUnexpectedError(Exception e) {
onError(e.getLocalizedMessage());
}
});

Contributor guide

Open the contributing guide

Research direction

The issue provides an Android example using PowerLevels and updatePowerLevels, but names no iOS file, test, or entry point. Start by locating the iOS room state and power-level update flow, then determine how events_default can be changed on iOS. Done means an iOS-supported way to change that power level, with corresponding verification.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
mobile-dev
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.