Skip to content
Snippets Groups Projects
Commit aba6b740 authored by Janne Mareike Koschinski's avatar Janne Mareike Koschinski
Browse files

Bugfix: Hidden events now stay really hidden.

parent 1814f712
Branches
No related tags found
No related merge requests found
......@@ -23,6 +23,7 @@ package de.kuschku.libquassel.localtypes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.util.Log;
import org.joda.time.DateTime;
import org.joda.time.DateTimeUtils;
......@@ -187,6 +188,8 @@ public class BacklogFilter implements UICallback {
public void setFilters(int filters) {
setFiltersInternal(filters);
client.metaDataManager().setHiddendata(client.coreId(), bufferId, filters);
int after = client.metaDataManager().hiddendata(client.coreId(), bufferId);
Log.e("DEBUG", filters + ":" + after);
}
private void setFiltersInternal(int filters) {
......
......@@ -233,13 +233,12 @@ public class MainActivity extends BoundActivity {
public void onConnectionChange(ConnectionChangeEvent.Status status) {
if (status == ConnectionChangeEvent.Status.CONNECTED) {
replaceFragment(new ChatFragment());
updateBufferViewConfigs();
context.client().backlogManager().open(this.status.bufferId);
accountHeader.setActiveProfile(this.status.bufferViewConfigId, true);
replaceFragment(new ChatFragment());
} else if (status == ConnectionChangeEvent.Status.DISCONNECTED) {
Toast.makeText(getApplication(), context.themeUtil().translations.statusDisconnected, Toast.LENGTH_LONG).show();
reauth();
}
}
......@@ -282,6 +281,7 @@ public class MainActivity extends BoundActivity {
}
}
}
drawerLeft.setSelection(id, false);
}
private void selectBufferViewConfig(@IntRange(from = -1) int bufferViewConfigId) {
......
......@@ -139,7 +139,7 @@ public class BufferItem extends SecondaryDrawerItem {
@Override
public long getIdentifier() {
return buffer.getInfo().id() + buffer.getInfo().networkId() << 16;
return buffer.getInfo().id();
}
@Override
......
......@@ -81,6 +81,10 @@ public class NetworkItem extends PrimaryDrawerItem implements IObservable<Drawer
List<IDrawerItem> bufferItems = new ArrayList<>();
for (int id : config.bufferList()) {
if (client.bufferManager().byNetwork(network.networkId()).contains(id)) {
if (config.allowedBufferTypes() == 0 ||
config.allowedBufferTypes() == -1 ||
(config.allowedBufferTypes() & client.bufferManager().buffer(id).getInfo().type().id) != 0)
bufferItems.add(manager.get(id));
}
}
......
......@@ -82,11 +82,11 @@ public class BufferMetaDataHelper extends SQLiteOpenHelper {
public void onCreate(SQLiteDatabase db) {
// Why do we use String.format and not prepared statements? Because we can’t bind table or
// column names in prepared statements
String statement = String.format("CREATE TABLE %s (%s, %s, %s, %s, PRIMARY KEY (%s, %s), UNIQUE(%s));",
String statement = String.format("CREATE TABLE %s (%s, %s, %s, %s, PRIMARY KEY (%s, %s), UNIQUE(%s, %s));",
TABLE_ACCOUNTS,
KEY_CORE, KEY_BUFFER, KEY_HIDDEN, KEY_MARKERLINE,
KEY_CORE, KEY_BUFFER,
KEY_CORE);
KEY_CORE, KEY_BUFFER);
db.execSQL(statement);
}
......@@ -159,6 +159,7 @@ public class BufferMetaDataHelper extends SQLiteOpenHelper {
}
public int hiddenData(String coreid, int bufferid) {
ensureExisting(coreid, bufferid);
Cursor cursor = cursorFindData(coreid);
if (cursor.moveToFirst()) {
do {
......
......@@ -94,6 +94,7 @@ public class IrcFormatHelper {
while (channelMatcher.find()) {
QIrcChannel channel = client.networkManager().network(message.bufferInfo.networkId()).ircChannel(channelMatcher.group());
Buffer buffer = client.bufferManager().channel(channel);
if (buffer != null)
spans.add(new FutureClickableSpan(new ChannelSpan(client, buffer.getInfo().id()), channelMatcher.start(), channelMatcher.end()));
}
for (FutureClickableSpan span : spans) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment