Some TODO items, in no particular order: - Rename all classes that lack the Ephy namespace - Use g_signal_emit instead of g_signal_emit_by_name - Use GDK_EVENT_PROPAGATE/GDK_EVENT_STOP. - Use G_SOURCE_CONTINUE/G_SOURCE_REMOVE. - Name all timeout and idle sources - Replace constructor functions with constructed functions - Use g_clear_object/g_clear_pointer in dispose/finalize - Replace dispose with finalize wherever possible - Use GtkBuilder instead of declaring the UIs with C - We practically don't test any part of Epiphany, change that (how do you test UI code? There's like 3 or 4 frameworks for this, pick one? What does Chrome do?)